Quantcast
Channel: Blog Virtualizacion
Viewing all articles
Browse latest Browse all 679

Powershell: Encode/Decode Base64

$
0
0

Powershell: Encode/Decode Base64

Después de unos días de reciclaje (lejos de pantallas), volvemos a la carga…

Hoy os voy a explicar como encriptar o desencriptar un texto o comando en BASE64. Si eres desarrollador o trabajas con sistemas informáticos, en algún momento de tu vida te tocará hacerlo, para incluir en tu código el usuario y contraseña sin ponerlo en texto plano.

Os dejo los comandos de Powershell necesarios:

$TEXTO = 'negu\elblogdenegu'
$ENCODED1 = [Convert]::ToBase64String([Text.Encoding]::Unicode.GetBytes($TEXTO))
Write-Output $ENCODED1

Esto nos devuelve el «churro»:

bgBlAGcAdQBcAGUAbABiAGwAbwBnAGQAZQBuAGUAZwB1AA==

Haremos lo mismo para un usuario o una contraseña. Si queremos el proceso para desencriptar:

$TEXTO = 'bgBlAGcAdQBcAGUAbABiAGwAbwBnAGQAZQBuAGUAZwB1AA=='
$DECODED = [System.Text.Encoding]::Unicode.GetString([System.Convert]::FromBase64String($TEXTO))
Write-Output $DECODED

Que nos devuelve:

negu\elblogdenegu

Ahora imaginaros que lo queréis codificar es un comando, lo haríamos de la siguiente forma:

$COMANDO = "dir c:\"
$ENCODED = [Convert]::ToBase64String([Text.Encoding]::Unicode.GetBytes($COMANDO))
Write-Output $ENCODED

Lo usaríamos de la siguiente forma:

powershell -E ZABpAHIAIABjADoAXAA=

Y para desencriptar:

$COMANDO = "ZABpAHIAIABjADoAXAA="
$DECODED = [System.Text.Encoding]::Unicode.GetString([System.Convert]::FromBase64String($COMANDO))
Write-Output $DECODED

Espero os parezca útil…

¿Te ha gustado la entrada SÍGUENOS EN TWITTER?

La entrada Powershell: Encode/Decode Base64 se publicó primero en Blog Virtualizacion.


Viewing all articles
Browse latest Browse all 679