Skip to content

OpenSSL

  • extract public key: openssl rsa -in <key.pem> -pubout > <public.pem>

  • extract private key: openssl pkey -inform PEM -outform PEM -in <key.pem> -out <private.pem>

  • encrypt with public key: openssl rsautl -encrypt -inkey <key> -pubin -in <file.txt> -out <file.ssl>

  • decrypt with private key: openssl rsautl -decrypt -inkey <private.pem> -in <encrypted.ssl> -out <decrypted.txt>

  • generate key pair: openssl genrsa -out <key.pem> 2048

  • sign: openssl dgst --sha256 -sign <key.pem> -out <sign.sha256> <file.txt>

  • verify signature: openssl dgst --sha256 -verify <public.pem> -signature <sign-sha256> <file.txt>

  • extract public key from certificate: openssl x509 -in <cert.ctr> -pubkey -noout > <public.pem>

  • convert binary signature to base64: openssl enc -base64 -in <sign-sha256> -out <sign-sha256.base64>

  • encrypt with password: openssl enc -aes-256-cbc -in <text.txt> -out <encrypted> -k <pass.txt>

  • decrypt with password: openssl enc -d aes-256-cbc -in <encrypted> -out <decrypted.txt> -k <pass.txt>