Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/fernandospr/jvm-encryption-sample

Encryption samples for a Kotlin application.
https://github.com/fernandospr/jvm-encryption-sample

aes rsa

Last synced: 5 days ago
JSON representation

Encryption samples for a Kotlin application.

Awesome Lists containing this project

README

        

# jvm-encryption-sample

Encryption samples.

## AES
Open/modify `AesApp.kt` and run the `main` function.

You'll get the following (similar) output:

```
AES KEY GENERATION
Key (Base64): fLivmIofMNx1S0vx4yorqerF26rw8T7tF54HC/UldjY=
IV (Base64): 8NV+Jf/TU2JB+qIgSw2aHw==

AES ENCRYPTION
Key (Base64): fLivmIofMNx1S0vx4yorqerF26rw8T7tF54HC/UldjY=
IV (Base64) - Optional: 8NV+Jf/TU2JB+qIgSw2aHw==
Message: Hello world!
Encrypted message (Base64): upqRbjPahMIfMDSI/my7cA==
IV (Base64): 8NV+Jf/TU2JB+qIgSw2aHw==

AES DECRYPTION
Key (Base64): fLivmIofMNx1S0vx4yorqerF26rw8T7tF54HC/UldjY=
IV (Base64): 8NV+Jf/TU2JB+qIgSw2aHw==
Encrypted message (Base64): upqRbjPahMIfMDSI/my7cA==
Decrypted message: Hello world!
```

## RSA
Open/modify `RsaApp.kt` and run the `main` function.

You'll get the following (similar) output:
```
RSA KEY GENERATION
PubKey (Base64): MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsIHPP8+QJmFKTIjMGFfguQCDXDx9BzGxF5Js8OSqNSPtaskO+M2GRf2Gv9m0O16wixsSNCFNfy9IxlQtb0xFL2nHuP3HIjDm+wcYAnz6q18zyVcNHPkuyFR4IYJJbq2v5IL5WoTmzLz+6WNufZNH1T1TbjPqJ/FIvq6W40MWVypF5X7UnRI5VLBcMJ13lkmyiDZnyXXQDsufr1s4BPx8u7L3HE9rhuc4la3VxKPFay8CIWrmjy2rdPx6pdPlVEIvUgkjyFO7k0sP9Ng1To4w6mYDUlHC/8c0p7dhMEUq+estW0MbJfmPuUOjVFgKXJEnGDo1UdBN4NluNGK+nSPcIQIDAQAB
PrvKey (Base64): MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCwgc8/z5AmYUpMiMwYV+C5AINcPH0HMbEXkmzw5Ko1I+1qyQ74zYZF/Ya/2bQ7XrCLGxI0IU1/L0jGVC1vTEUvace4/cciMOb7BxgCfPqrXzPJVw0c+S7IVHghgklura/kgvlahObMvP7pY259k0fVPVNuM+on8Ui+rpbjQxZXKkXlftSdEjlUsFwwnXeWSbKINmfJddAOy5+vWzgE/Hy7svccT2uG5ziVrdXEo8VrLwIhauaPLat0/Hql0+VUQi9SCSPIU7uTSw/02DVOjjDqZgNSUcL/xzSnt2EwRSr56y1bQxsl+Y+5Q6NUWApckScYOjVR0E3g2W40Yr6dI9whAgMBAAECggEAAWYuBeP30Q4RYDTvZTwBGIZUBD2ogg+XR0gOXAR8AurTfXa1iyxZ5aEiWc/4eUYBYUDoLoibDCiMS6IsMAcrPzp37lP4qaE4m4HNY2upMwWQrAZoILQq9kSRJTbarSlsTQPqxRhrmfDflmsG27D4r0yKpkN8Fi/38ycAJDIKccttHYOhjvJtFVB+08OmK1IoXxHSsRL+hy849BPr/8ai8PI5PBF969qQ/6a2fuDgOIuATVZgK4uZS2GqjaVrxNNO2ucUfjcfe2IzjMNfjG4dHA2cwrTW5gfG9vHzS7cC3I6me/rLG3XnVmWIqDu19Hjn5s4aRNBuP2qN96dCdvCRaQKBgQDJzC9umkcIBjNPQM6a+mhbUbwnYiH1qLmOPNkSDK3rxMaDYuAZLGswKDauA8/zFXINiaH5HQ/JcXbwxbzgqQSnOipSvBrV67MI0UYVNV8V9oq3yxNCCmWVJDY0NV2gCoVVKLOfUX9y+Hw/7/ccwv70J2MRiQLsg4doYLCFvplt/QKBgQDf6p7yakkVWI0+FkG2buBCpn1TbSY4bpIflwkh7iNXRLOxbLIZRFC9qfktYA8nIeL5mascTIhnExBJ5/yyQML8iEGrsnqWETSE0NJHniexqVZV9017Ww3aSqFVjZojatVwZya5jIaICAyY+UODztwtqaGi9ohcRAoiTklyrELN9QKBgQCQvCdk/7hkk/XnKQdGdsW0gboe0S6kQKDd2NykKn3vtVHgWGF9DLPQdXdKdieHJOGJviZzQxnYlM4HQPwIcpGI05oZfxsMRaJCd775ZS9O1GaIDlpAqq5TOwa5iXEeYY1iF/BFG7H6pyiOvzEQ6vbr7PgMUqXLN0c+YOMa+iqXjQKBgDQnsQgj64v2SUfZ5Up5/vBnWS+yb8GbN5v2ESF/F2o/TV+ZQs6R1ACpc6m3AzCJOxYKTgnUZb0kepnMWFaosQIjNrCobNdBgKsi/KfD1dkS6VIyvTBrYAmlcni799giDT8WN7XmXnuW7GBBRxGPgEd+iHCt3csn6fhdpcv5BcJ1AoGADSZXeNw/kQ2Ocwkvysk0gWUhLV9fZdAGL5SHNBXRjuZmKWjOt0/JPpJsMjRQT0xlaeZn1iOgn2Y0jCMx0Bt+nw3R6TGmQBnWvemjm0t2iWUYLLVgm9QpIK5yeunvKE7Ism+8CeHlV2ISkSF0Yj0RNjSglNSBIx1DGdk3gK7BoaE=

RSA ENCRYPTION
PubKey (Base64): MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsIHPP8+QJmFKTIjMGFfguQCDXDx9BzGxF5Js8OSqNSPtaskO+M2GRf2Gv9m0O16wixsSNCFNfy9IxlQtb0xFL2nHuP3HIjDm+wcYAnz6q18zyVcNHPkuyFR4IYJJbq2v5IL5WoTmzLz+6WNufZNH1T1TbjPqJ/FIvq6W40MWVypF5X7UnRI5VLBcMJ13lkmyiDZnyXXQDsufr1s4BPx8u7L3HE9rhuc4la3VxKPFay8CIWrmjy2rdPx6pdPlVEIvUgkjyFO7k0sP9Ng1To4w6mYDUlHC/8c0p7dhMEUq+estW0MbJfmPuUOjVFgKXJEnGDo1UdBN4NluNGK+nSPcIQIDAQAB
Message: Hello world!
Encrypted message (Base64): SK5Mr+MnNzcPrBMpJ0b8oG1PLbVg+11S8aO4QGSI1Vv4Yukyi/jxM3WwzDZWMm5N8De5ljrw3XdOxrY/dA0NPyatMLeIsZjrOoDT11oK0UtaByonDIeUHjj64fGm/a5zdREwB8ghALHps/McBkgfvPgdOErPD0dJKgwVJ8I0m1Ma6kc7l1O11/xXhd3bZt8wZdGmD5Ge3ZkGatKUAYvNns+VI2iEENPb5lZxXyE5OSeqWkBQWKRR6H+E1qklD/nX+MrsEAsVd5Thu3G35SqGaKXdrvlg/shTUyimAHE71Qc5r8yQ3HzR1WwI1sxdJT47n4jr97EDu76Q54Gsg6ILFQ==

RSA DECRYPTION
PrvKey (Base64): MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCwgc8/z5AmYUpMiMwYV+C5AINcPH0HMbEXkmzw5Ko1I+1qyQ74zYZF/Ya/2bQ7XrCLGxI0IU1/L0jGVC1vTEUvace4/cciMOb7BxgCfPqrXzPJVw0c+S7IVHghgklura/kgvlahObMvP7pY259k0fVPVNuM+on8Ui+rpbjQxZXKkXlftSdEjlUsFwwnXeWSbKINmfJddAOy5+vWzgE/Hy7svccT2uG5ziVrdXEo8VrLwIhauaPLat0/Hql0+VUQi9SCSPIU7uTSw/02DVOjjDqZgNSUcL/xzSnt2EwRSr56y1bQxsl+Y+5Q6NUWApckScYOjVR0E3g2W40Yr6dI9whAgMBAAECggEAAWYuBeP30Q4RYDTvZTwBGIZUBD2ogg+XR0gOXAR8AurTfXa1iyxZ5aEiWc/4eUYBYUDoLoibDCiMS6IsMAcrPzp37lP4qaE4m4HNY2upMwWQrAZoILQq9kSRJTbarSlsTQPqxRhrmfDflmsG27D4r0yKpkN8Fi/38ycAJDIKccttHYOhjvJtFVB+08OmK1IoXxHSsRL+hy849BPr/8ai8PI5PBF969qQ/6a2fuDgOIuATVZgK4uZS2GqjaVrxNNO2ucUfjcfe2IzjMNfjG4dHA2cwrTW5gfG9vHzS7cC3I6me/rLG3XnVmWIqDu19Hjn5s4aRNBuP2qN96dCdvCRaQKBgQDJzC9umkcIBjNPQM6a+mhbUbwnYiH1qLmOPNkSDK3rxMaDYuAZLGswKDauA8/zFXINiaH5HQ/JcXbwxbzgqQSnOipSvBrV67MI0UYVNV8V9oq3yxNCCmWVJDY0NV2gCoVVKLOfUX9y+Hw/7/ccwv70J2MRiQLsg4doYLCFvplt/QKBgQDf6p7yakkVWI0+FkG2buBCpn1TbSY4bpIflwkh7iNXRLOxbLIZRFC9qfktYA8nIeL5mascTIhnExBJ5/yyQML8iEGrsnqWETSE0NJHniexqVZV9017Ww3aSqFVjZojatVwZya5jIaICAyY+UODztwtqaGi9ohcRAoiTklyrELN9QKBgQCQvCdk/7hkk/XnKQdGdsW0gboe0S6kQKDd2NykKn3vtVHgWGF9DLPQdXdKdieHJOGJviZzQxnYlM4HQPwIcpGI05oZfxsMRaJCd775ZS9O1GaIDlpAqq5TOwa5iXEeYY1iF/BFG7H6pyiOvzEQ6vbr7PgMUqXLN0c+YOMa+iqXjQKBgDQnsQgj64v2SUfZ5Up5/vBnWS+yb8GbN5v2ESF/F2o/TV+ZQs6R1ACpc6m3AzCJOxYKTgnUZb0kepnMWFaosQIjNrCobNdBgKsi/KfD1dkS6VIyvTBrYAmlcni799giDT8WN7XmXnuW7GBBRxGPgEd+iHCt3csn6fhdpcv5BcJ1AoGADSZXeNw/kQ2Ocwkvysk0gWUhLV9fZdAGL5SHNBXRjuZmKWjOt0/JPpJsMjRQT0xlaeZn1iOgn2Y0jCMx0Bt+nw3R6TGmQBnWvemjm0t2iWUYLLVgm9QpIK5yeunvKE7Ism+8CeHlV2ISkSF0Yj0RNjSglNSBIx1DGdk3gK7BoaE=
Encrypted message (Base64): SK5Mr+MnNzcPrBMpJ0b8oG1PLbVg+11S8aO4QGSI1Vv4Yukyi/jxM3WwzDZWMm5N8De5ljrw3XdOxrY/dA0NPyatMLeIsZjrOoDT11oK0UtaByonDIeUHjj64fGm/a5zdREwB8ghALHps/McBkgfvPgdOErPD0dJKgwVJ8I0m1Ma6kc7l1O11/xXhd3bZt8wZdGmD5Ge3ZkGatKUAYvNns+VI2iEENPb5lZxXyE5OSeqWkBQWKRR6H+E1qklD/nX+MrsEAsVd5Thu3G35SqGaKXdrvlg/shTUyimAHE71Qc5r8yQ3HzR1WwI1sxdJT47n4jr97EDu76Q54Gsg6ILFQ==
Decrypted message: Hello world!

RSA SIGNATURE
PrvKey (Base64): MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCwgc8/z5AmYUpMiMwYV+C5AINcPH0HMbEXkmzw5Ko1I+1qyQ74zYZF/Ya/2bQ7XrCLGxI0IU1/L0jGVC1vTEUvace4/cciMOb7BxgCfPqrXzPJVw0c+S7IVHghgklura/kgvlahObMvP7pY259k0fVPVNuM+on8Ui+rpbjQxZXKkXlftSdEjlUsFwwnXeWSbKINmfJddAOy5+vWzgE/Hy7svccT2uG5ziVrdXEo8VrLwIhauaPLat0/Hql0+VUQi9SCSPIU7uTSw/02DVOjjDqZgNSUcL/xzSnt2EwRSr56y1bQxsl+Y+5Q6NUWApckScYOjVR0E3g2W40Yr6dI9whAgMBAAECggEAAWYuBeP30Q4RYDTvZTwBGIZUBD2ogg+XR0gOXAR8AurTfXa1iyxZ5aEiWc/4eUYBYUDoLoibDCiMS6IsMAcrPzp37lP4qaE4m4HNY2upMwWQrAZoILQq9kSRJTbarSlsTQPqxRhrmfDflmsG27D4r0yKpkN8Fi/38ycAJDIKccttHYOhjvJtFVB+08OmK1IoXxHSsRL+hy849BPr/8ai8PI5PBF969qQ/6a2fuDgOIuATVZgK4uZS2GqjaVrxNNO2ucUfjcfe2IzjMNfjG4dHA2cwrTW5gfG9vHzS7cC3I6me/rLG3XnVmWIqDu19Hjn5s4aRNBuP2qN96dCdvCRaQKBgQDJzC9umkcIBjNPQM6a+mhbUbwnYiH1qLmOPNkSDK3rxMaDYuAZLGswKDauA8/zFXINiaH5HQ/JcXbwxbzgqQSnOipSvBrV67MI0UYVNV8V9oq3yxNCCmWVJDY0NV2gCoVVKLOfUX9y+Hw/7/ccwv70J2MRiQLsg4doYLCFvplt/QKBgQDf6p7yakkVWI0+FkG2buBCpn1TbSY4bpIflwkh7iNXRLOxbLIZRFC9qfktYA8nIeL5mascTIhnExBJ5/yyQML8iEGrsnqWETSE0NJHniexqVZV9017Ww3aSqFVjZojatVwZya5jIaICAyY+UODztwtqaGi9ohcRAoiTklyrELN9QKBgQCQvCdk/7hkk/XnKQdGdsW0gboe0S6kQKDd2NykKn3vtVHgWGF9DLPQdXdKdieHJOGJviZzQxnYlM4HQPwIcpGI05oZfxsMRaJCd775ZS9O1GaIDlpAqq5TOwa5iXEeYY1iF/BFG7H6pyiOvzEQ6vbr7PgMUqXLN0c+YOMa+iqXjQKBgDQnsQgj64v2SUfZ5Up5/vBnWS+yb8GbN5v2ESF/F2o/TV+ZQs6R1ACpc6m3AzCJOxYKTgnUZb0kepnMWFaosQIjNrCobNdBgKsi/KfD1dkS6VIyvTBrYAmlcni799giDT8WN7XmXnuW7GBBRxGPgEd+iHCt3csn6fhdpcv5BcJ1AoGADSZXeNw/kQ2Ocwkvysk0gWUhLV9fZdAGL5SHNBXRjuZmKWjOt0/JPpJsMjRQT0xlaeZn1iOgn2Y0jCMx0Bt+nw3R6TGmQBnWvemjm0t2iWUYLLVgm9QpIK5yeunvKE7Ism+8CeHlV2ISkSF0Yj0RNjSglNSBIx1DGdk3gK7BoaE=
Message: Hello world!
Signature (Base64): bJ8YRZtNPObIEkYlPQZqAF9Kwoh80D0MWVQ46lOBv9H3g3l54H1WPJxRmovqncmJljJIgyDKZj2RRCoNcXERO5DLwSkvr2v4dwMnDh/aIzc9QZ46bO1r9insTA2Xu8rb8BuYBBmkILTIwDLmSknXpHPaBVWSrIJ5OST9UPhyVUFV4HNDYsK4GMgcLPeztaftU9xJZ/VtPcmgpvZFsD/II5nsKgkhfPzsIP2CTBvUF5L+jIHQQYipfhd/QivTXGQ6ZkC/utV8vcDx7Sqlzb0sGjIHDwAPK8aYElCGdRQb1DXiYxE2t+pIKwHsbn4jGQBvhgNdVynA8Mc5DqF2lM7ZQQ==

RSA SIGNATURE VERIFICATION
PubKey (Base64): MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsIHPP8+QJmFKTIjMGFfguQCDXDx9BzGxF5Js8OSqNSPtaskO+M2GRf2Gv9m0O16wixsSNCFNfy9IxlQtb0xFL2nHuP3HIjDm+wcYAnz6q18zyVcNHPkuyFR4IYJJbq2v5IL5WoTmzLz+6WNufZNH1T1TbjPqJ/FIvq6W40MWVypF5X7UnRI5VLBcMJ13lkmyiDZnyXXQDsufr1s4BPx8u7L3HE9rhuc4la3VxKPFay8CIWrmjy2rdPx6pdPlVEIvUgkjyFO7k0sP9Ng1To4w6mYDUlHC/8c0p7dhMEUq+estW0MbJfmPuUOjVFgKXJEnGDo1UdBN4NluNGK+nSPcIQIDAQAB
Message: Hello world!
Signature (Base64): bJ8YRZtNPObIEkYlPQZqAF9Kwoh80D0MWVQ46lOBv9H3g3l54H1WPJxRmovqncmJljJIgyDKZj2RRCoNcXERO5DLwSkvr2v4dwMnDh/aIzc9QZ46bO1r9insTA2Xu8rb8BuYBBmkILTIwDLmSknXpHPaBVWSrIJ5OST9UPhyVUFV4HNDYsK4GMgcLPeztaftU9xJZ/VtPcmgpvZFsD/II5nsKgkhfPzsIP2CTBvUF5L+jIHQQYipfhd/QivTXGQ6ZkC/utV8vcDx7Sqlzb0sGjIHDwAPK8aYElCGdRQb1DXiYxE2t+pIKwHsbn4jGQBvhgNdVynA8Mc5DqF2lM7ZQQ==
Valid Signature: true
```