Skip to content

Instantly share code, notes, and snippets.

@saltukalakus
Created December 3, 2019 14:15
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save saltukalakus/08efe814847f9a049ce4d07140817c78 to your computer and use it in GitHub Desktop.
Save saltukalakus/08efe814847f9a049ce4d07140817c78 to your computer and use it in GitHub Desktop.
Encrypt & Decrypt with existing keys
const crypto = require("crypto");
let publicKey = `-----BEGIN PUBLIC KEY-----
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAsoykgfqb0VqzTIDDShJ7
Pa7sg6hV4kmBBof7LLPyvmMdNB/2zNZ3mfEr0Dw+qNinmyVXQ5b/DjwbjHvYQpn9
foiFFDS6fP8ErGkICEN/68JvI/MSEJsbfDxKM/rQTwXVfD+0wxEIRblzW1LMYraO
NuCPWgg0UZRmis+8Qcr0vZdf61lyfyaTx0C0bwS/wsJO0yFrIWGMsatYZktbbpPG
IOQwqT2VIWfvcKjMcV8OXHNMoVjG6ni3kqXjSPYKaT1qWl4L73/dWKS0IlJJfdYw
0hpzDsmgwnsug9KBtfzbreNenVPbMfCUXone8VQZ/0+Eb8iO7JwaPuFld+0Czcsu
kG6pmBUwaPk9ISlRNWUkyhUP9q4rUmAzAZgcYPNVWQVZwG/u7X2Jbf7jdsYvvCX3
qaqhXyWXrioyrLbjYRhkBdy0b1cfYgIi1cBW2CM5oVbGin/2gX5N46y21VGdppFd
Pcumf38VipG5dkRNlPAMdW+EAtkkXyIHprItRgcmCYRvPwollOGD0pzAuvsCwCjv
5OiIrS4iavAqDtO0h/nZoyPReCOz0EkGJ3eQmbL/ZdVvzM0jPKbSOXUYcUSt5pcv
/afqkGp1Avlw350iQHbjvhtWLHmkrqI73w0mg+qCGwCOh3Yh3lZOfd0r7A3wNkr5
/1gOGFusCAyTMEVQc5PG7t0CAwEAAQ==
-----END PUBLIC KEY-----`;
let privateKey = `-----BEGIN ENCRYPTED PRIVATE KEY-----
MIIJrTBXBgkqhkiG9w0BBQ0wSjApBgkqhkiG9w0BBQwwHAQIRxz6ISL1Bj0CAggA
MAwGCCqGSIb3DQIJBQAwHQYJYIZIAWUDBAEqBBD9oULVDx5I8zu1v7q0y0olBIIJ
UEgFw1BRHxKMNg3weOnQkKTCh6xEKjwz+CwaHQOmRxWIKG3e2/6j/arm10QGI9Tf
eK5wV8D9iHC6om48RxBqb/pK31h+NtkwvogdUgbmJmuvduCgUuLHyAA/3MzqGpKY
ra95MQL5+qV+tHQ9RIpsFo9QcRhH7QeQpkXU/Rw8ROGVrebOSR2TkoE5YvmcgDOV
O92Fpx8KXYBZpF404eeYyQeernGMt8tjAMLRSIM3tvssvJYpO4oBqp8/+ydCaw02
Xwzzbh6S4gchgL51I4I5/pQaECY7WJqAgSqnzJtCLxZEzhlbu/ReXeUbuSeHpNyx
9a9i9PrDu0awO/IZMB1wwnxDb7HJYqggqrqhZT2fPbQb4bSofQgHsjnnY0SHewnJ
gQhZ/fXpA8/78J/WTRUdhtnR7n9PV1F8y+cJTct/VJvHsWxfHvWnHBVxZSGfaFp/
fRgBJiko+oHuCk4r9dYdb48T2L3AWjXETYP++4PUVb9EO9cvTaRtcEijzlekn+86
UNulXyItGn3CWeOqe1GFCPVPG+Auhvfu07r5xwAq1Cq8GQTJaAN46/LMFaY1213k
HfI4dBixxHLiHUC/JNrUVbYgnivT9vCxw+ugRU5RlsfrtGVHO8Bq3R3iwN3D7nyu
DKE9rYfAD8T5o+Vvyv60jPworLmZZnpjKd2cgM+JBAIOO5X+61x3437yFJSDnv2B
QpDy4sadJmGjKO256dFd8FFcrvLm7TsgIO/yDDZohYVjOQRJoGaGlf59LikAjkkV
UjT7l/PEQLjkzzBe8OqFlq6vkWUtPmjn/6wsd2OFj02G6BWgCvGZvENAFX6HETQj
a1EFNtcqCh5xmRcG/sQ8YhrjGtTZGEwb9qCHvY6qSo1wCMMLl5yVJosmODJQeprd
qx9U25uLCkecEjr7hu2pQ9AaF3QsvftzkUrvRtTFsBHNj/JzKkE1D04gX77LsM5o
cQjaZ4nPFb5XYjT/mklV70NjZQzTZpIrNkdB9RGOa5URAI/EHaj9i1GVJHuaVzxh
vFxqpD/hqCMz++NQz+9iFLbLErISW20LZTrFZrNGQLFOaH8AdzoLaCTHFpTKDfJF
L9F2vYvWOGO77Wt+jBk607d0kCyoGUbexhg2ZX3VnfGWGJgIFcJ4Og07gMqvDmDI
kQVxGeoUz5ZgCwESW8WVr71kEa7eHQR8JoOFD29YYGQmCcQplZ3Uxx6+v+Zel/nL
OSOF2sPAwAyMvK9M6YXLWK7PFkCqse8rnhiz4njUJT4mzj/O7mzBuUBZm9WxkppY
Sp/z3tsLdBmNpHEaR2+d7uhEQPoDWmyR2/G93DlOU3I129JxBg3g7EDl9GkcA0ts
F4vhTBlATXnIDCI7DU7Fg69RShommuZAEVoekWB8Fz2r5hkUqz22QIuPlhI16MB0
Walx3D/VkYEORQGb/82bHtYhLdDhRm5TChzErzRtCVc6a563Gpn2+B6X7ZGIjsh2
eamV66WB0PQiQ94wLLetrh8bB5s83vyfREiA9ZBnP5Xbi39FZdnHPnX96G2Dosj/
vjMkU0828kYBRhytWfLXJEtWXilDGJVhQi2tHSOYYGAA4c0IsQ5McgA8M96uBQkP
kbwxi30gpnkO+ahIGa2opse0qyebo3lDU2PaAXw+9r1463CLZlPIjh5RM8ldHm8B
JrNwCzFO46jbdlX+KjpuhKIP4zx796g75x33ClON1vODT7cols9ZtqUb8haR2fFY
DemoLAdNZhnYG/K2WK79olSQwFlfOfGvX5wdvV0IBQQMNEO6/BMQ/0jYlTubpXGy
clY1v1rmn9xcLSdX+4qWKeEeI0t9aRtd4dxtBGFbacLbcj1etB15KgWMYQMozzkR
/TYJwxy91AwuueYZBEuG7MRfqkPyB6zrmBxzUxS7kaWylBxoclxhllwfVT9CQHcO
A7w01igCnTbgD9yVRn/treHiXqwQqJEP/LZ7/XAt06kbAbYzBTHL//0IOuFCN6Bs
3HP3evEtZsFmyZcUEqxFUPXh1hFzcqqSoN8akFqr4sFJdW9pqGku63LohD4+eKy/
Ncr3LBWWNEL+nbNM59Us8WapXbLgvT4DQPpn8L6xgz3Py1jKnSRlWrF81eb/fIsl
uqkZUpOV0BhEp1j0dCMCcktDHwBcriEYHA7z5dJpnWVs/4iDoLamq7pp4JRY54/o
JQ7TjqZT0Hx2wx9CkedY31vzufHs4IBdPnZZYM9nebz+Eu5JdY+j1h/KD5mPa4uJ
xYD9PO+PE7+6KBUVgdAh+8g2QzhuG7Mu6QKgI8tD6SrkafKQZJkubJiE+gHJ8qTr
OzNMZeNyeZKzW84aFwezvHjaFJzfs9E+P/9d9OZtRLlSU2vhHfhsV+11pkh6IOvu
UBZJaFAV7kFfYHzCU+gNMMdEhbljamyYpw+NCvNNSG9GmTJN7pjrFcb715GZVlOJ
6OLgIt3eT3thPtGCpdtKAxiBmdCPGXdn6UNzSg139F+hVXQVzwEuXyugUoAS/I7l
UpgEK4z820I8Ogrdfa7O/MHWWBy4BTKv7xJ2GAA2xjyGsOvBbUZKgDhouPtijtB1
oPClJZfxVlLWTpNa76yimW9qdXkLqrFbUJDj0b558n54RYjb8nAIYSpIyoFD4M8P
w5pJgilT1ausbvK2U398h+WaNNm2Sgv5MtVhGRgd7LTSUI9ZSdBuPiKiCZ8dD2Z0
3++ZyYnZcCBzz02lHBEszBslu1Z2o8DqGZLTU1ELGm4VbRnT7CYlyN+kNkl6W9Nw
oy/XUoctQ0b+3w66rX+0unw9ls9Tj6x+l1qvg7mNvHajJqGyCXEu7zNZx+WGhJmf
9B+u48MEarf2Jn5XzTk7Oq10z5YdrQ/J2MPQlmHM9JC2WX/G7rDEYLqoXNSFBcaX
jENGfPT9BH9R69fIqNIqHmCvdxk+eIVURkZpPEf3sGEfdXwCSwunha8xxPUNBYOy
Iv5NW8Smlxx1qV43erGh6VhTopW9ND8Mh/xixsd3j4l65RoxuCCI/W2jV2+Ch7A6
m8wPIfMvnmQfOOr/c6ebRcn81ukRNJPiEO0uaxrtzMwh3SwZn7z91pUcBsHKt/Bd
9tqI/o5Y+BKf2coIancX9px2j6wDwz9wJjOYkDpuDxf4C2vjRak+5dibZu8gQ2Lw
uvrdNz/y9tFF/Wb92F2cAuVt8x4t/wQ56DqWQ0WIqcot
-----END ENCRYPTED PRIVATE KEY-----`;
const user = "STRING_TO_ENCRYPT";
const userTimeString = Buffer.from(user, "utf8");
const encryptedString = crypto.publicEncrypt(publicKey, userTimeString);
const decryptedString = crypto.privateDecrypt(
{
key: privateKey.toString(),
passphrase: "temp"
},
encryptedString
);
console.log(Buffer.from(decryptedString).toString("utf8"));
console.log(decryptedString.toString("utf8"));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment