Created
March 15, 2011 17:25
-
-
Save andrewschaaf/871082 to your computer and use it in GitHub Desktop.
node sign/verify test
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
### | |
openssl genrsa 4096 > x.pem | |
openssl req -new -key x.pem -out x.csr | |
openssl x509 -req -days 365 -in x.csr -signkey x.pem -out x.crt | |
### | |
test = (private_key, cert) -> | |
crypto = require 'crypto' | |
data = new Buffer "Hello Crypto!" | |
s = crypto.createSign 'RSA-SHA256' | |
s.update data | |
signature = s.sign private_key, 'base64' | |
console.log "Signature len: #{signature.length}" | |
v = crypto.createVerify 'RSA-SHA256' | |
v.update data | |
verified = v.verify cert, signature, 'base64' | |
console.log "Verified: #{verified}" | |
private_key = """ | |
-----BEGIN RSA PRIVATE KEY----- | |
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 | |
-----END RSA PRIVATE KEY----- | |
""" | |
cert = """ | |
-----BEGIN CERTIFICATE----- | |
MIIFBjCCAu4CCQCx7j/hxvaKfzANBgkqhkiG9w0BAQUFADBFMQswCQYDVQQGEwJB | |
VTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0 | |
cyBQdHkgTHRkMB4XDTExMDMxNTE3MjIyNloXDTEyMDMxNDE3MjIyNlowRTELMAkG | |
A1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0 | |
IFdpZGdpdHMgUHR5IEx0ZDCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB | |
AOgki7zz3Ctn7elXMRFs6cQUAKt6ZlDg9BquK2M9JKX/aJIYqyMhptG6vSlIU/41 | |
wJkH5g46OUZo1soJUj08RwPq7rMrzzxN+FSJJu+MkxGzx75V7oAHCq8kcAbh/5th | |
ZzRZdxO7VShuXzZNctANQW0Y987/aIOZWUzpKk8kd6oxDECOds8z+IJVS12iYvnQ | |
zYL9ta0xm4R9fC8HXPYHVZ2MwlVx1HKItVeH6stPeWW6VUHK2Ru2wfOXZwRsYqMA | |
cZ90+AyhREqaHsHR2hZ2WcOwChxnC5xab0AHuGAecebbao0Xp04YoDmHte5APWoU | |
BT9cUr5kknhIY6XwDBvQdQgvn0aIgkOGWjd+mfznye0DQDhvwOjwBA13Ye1ECkKl | |
/UDfFi7S78IRP2/wUiyAMk2dZxOfUC7Qng/9D3Lfo6IPgCjxTVIUhRVq2VHU7Yca | |
NnXo2VuBaBPTAQbsMholTsInAdTZxGT6GHV0gNfLOHa/F5EZVeTe26AL2wQHjCKC | |
oVwmrcW2y96ypTi6Jwubsx5qX/f5UoFn0S3+z4qAvn4r3Bf83x/ly4DkrLiHlQIQ | |
NZLMpcO25PNXIfPOcaTVkR/9Bpme5lkBWpqk5gvhsxxVDE11iT9kz9WlYGPcBew7 | |
D9GnyJEMvHPT5up+x3WNroNNioB/yOMUjrKI1vAbz/EDAgMBAAEwDQYJKoZIhvcN | |
AQEFBQADggIBADwNgssSVKplyWWTtIo9iSVH0fkkxuL7lBQuASeHi+KOn1BW16Ag | |
UmqDpOh5L096XCpSC/g+mLKDeMuJQuFm94kr8hKQ5OX4JR/hwKo9tUwDsGYuSQxE | |
CairR1KLBzjHpy1IWNuF/TgnP0HM5Yqh3LtBcv06gGguWtVn9kCS9kHYR/kAu6HK | |
lQLk4e2QaNXxyhCJ5D1A66T9PmH6U+JTs2+oodECl5W96hwG26zMVNr56757k555 | |
DdzEITmVVo/6N9ptAUsXlIWVnYrlTTOqfrsj04Pa3No9FUvP2GxW6tXTwA4h/qqB | |
Y+7IdmN+CY2oxpI4Mo7BEtAKnwS8ocOBkv6EFovnVBvWTvZ8h/Tmd63VnxsJmsUd | |
H1ZBpas/VjEZNkWlEzf7ydkO9ciaFmkqwZo/2L/zXmcBFOCXDGnIqvU25hRyxj0e | |
ILmXUxwvV5dW2YsaEXoamBqK/Q1/Ff5Ucml5IMIiio5JqUwwAO1yTaLWzXdqSo/k | |
iihHwz2RHrRjgHEmiQ8fO1eWVZRz895LD0HuwJ9BA637GYGTUa2lIFmKSASZIkMF | |
hWHwhG3F2N5YdKySCSKKp+lYnYOxNqIk0T7Xxknovr4+HBjAnqWa2LtqB/rFN0zm | |
VTKgYDthM4VpRLeaCoWineXRCdxcIXIghyHW7Bfx9iJLtJO1pRS6BEaD | |
-----END CERTIFICATE----- | |
""" | |
test private_key, cert |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment