ืืืื ืืคืงืืื rsautlssl ืฉื ืืชื ืืืจืืฅ ืืกืคืง ืืืืจืื ืืืื ืื ืฉื OnWorks ืืืืฆืขืืช ืืืช ืืชืื ืืช ืืขืืืื ืืืงืืื ืืช ืืืจืืืืช ืฉืื ื, ืืืื Ubuntu Online, Fedora Online, ืืืืืืืจ ืืงืืื ืฉื Windows ืื ืืืืืืืจ ืืงืืื ืฉื MAC OS
ืชึธืึฐื ึดืืช:
ืฉืึตื
rsautl - ืืื RSA
ืชึทืงืฆึดืืจ
OpenSSL rsautl [- ืคืืื] [ืืืื ืคืืื] [-ืืื ืคืืื] [-ืคืืืื] [-ืืืื] [-ืกึดืืึธื] [-ืชืืฉืจ]
[-ืืฆืคืื] [-ืคืขื ืื] [-pkcs] [-ssl] [-ืืื] [-ืืงืกืืืค] [-asn1parse]
ืชืืืืจ
ืืฉืืืื rsautl ื ืืชื ืืืฉืชืืฉ ืืคืงืืื ืืื ืืืชืื, ืืืืช, ืืืฆืคืื ืืืคืขื ื ื ืชืื ืื ืืืืฆืขืืช ื-RSA
ืืืืืจืืชื.
ืคืงืืื ืืคืฉืจืืืืช
- ืฉื ืืงืืืฅ
ืื ืืฆืืื ืืช ืฉื ืงืืืฅ ืืงืื ืฉืืื ื ืืฉ ืืงืจืื ื ืชืื ืื ืื ืงืื ืกืื ืืจืื ืื ืืคืฉืจืืช ืื
ืื ืืฆืืื.
ืืืื ืฉื ืืงืืืฅ
ืืฆืืื ืืช ืฉื ืงืืืฅ ืืคืื ืืืชืืื ืื ืคืื ืกืื ืืจืื ืืืจืืจืช ืืืื.
-ืืื ืคืืื
ืงืืืฅ ืืคืชื ืืงืื, ืืืจืืจืช ืืืื ืืื ืฆืจืื ืืืืืช ืืคืชื ืคืจืื RSA.
-ืคืืืื
ืงืืืฅ ืืงืื ืืื ืืคืชื RSA ืฆืืืืจื.
-ืืืื
ืืงืื ืืื ืืืฉืืจ ืืืืื ืืคืชื ืฆืืืืจื RSA.
-ืกึดืืึธื
ืืชืื ืขื ื ืชืื ื ืืงืื ืืืืฆืืื ืืช ืืชืืฆืื ืืืชืืื. ืื ืืืจืฉ ืืคืชื ืคืจืื RSA.
-ืชืืฉืจ
ืืืช ืืช ื ืชืื ื ืืงืื ืืคืื ืืช ืื ืชืื ืื ืืืฉืืืืจืื.
-ืืฆืคืื
ืืฆืคืื ืืช ื ืชืื ื ืืงืื ืืืืฆืขืืช ืืคืชื RSA ืฆืืืืจื.
-ืคืขื ืื
ืคืขื ืื ื ืชืื ื ืืงืื ืืืืฆืขืืช ืืคืชื ืคืจืื RSA.
-pkcs, -ืืืฃ, -ssl, -ืืื
ืืจืืคืื ืืฉืืืืฉ: PKCS#1 v1.5 (ืืจืืจืช ืืืืื), PKCS#1 OAEP, ืจืืคืื ืืืืื ืืฉืืืืฉ ื
ืืืืฆืืช ืื ืชืืืืืช SSL v2 ืืืืืจ, ืื ืืื ืจืืคืื, ืืืชืืื. ืขืืืจ ืืชืืืืช,
ืจืง -pkcs ื -ืืื ืืืื ืืฉืืฉ.
-ืืงืกืืืค
hex dump ืืช ื ืชืื ื ืืคืื.
-asn1parse
asn1parse ืืช ื ืชืื ื ืืคืื, ืื ืฉืืืืฉื ืืฉืืืื ืขื -ืชืืฉืจ ืืึนืคึผึฐืฆึดืึธื.
ืืืจืื
rsautl ืืืืืื ืฉืืื ืืฉืชืืฉ ืืืืืืจืืชื RSA ืืฉืืจืืช ื ืืชื ืืืฉืชืืฉ ืื ืจืง ืืื ืืืชืื ืื ืืืืช ืงืื
ืคืืกืืช ื ืชืื ืื.
ืืืืืืืช
ืืชืื ืขื ืืื ื ืชืื ืื ืืืืฆืขืืช ืืคืชื ืคืจืื:
openssl rsautl -ืื ืืกื -ืงืืืฅ -inkey key.pem -out sig
ืฉืืืจ ืืช ืื ืชืื ืื ืืืชืืืื
openssl rsautl -ืืืืืช -in sig -inkey key.pem
ืืืืง ืืช ืื ืชืื ืื ืืืืืืืื ืืืชืืืื:
openssl rsautl -ืืืืืช -ืืงืืืฅ -inkey key.pem -raw -hexdump
0000 - 00 01 ff ff ff ff ff ff-ff ff ff ff ff ff ff ff .....
0010 - ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff .
0020 - ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff .
0030 - ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff .
0040 - ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff .
0050 - ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff .
0060 - ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff .
0070 - ff ff ff ff 00 68 65 6c-6c 6f 20 77 6f 72 6c 64 .....ืฉืืื ืขืืื
ืขืืฆืื ืืืืืง PKCS#1 ื ืืืจ ืืืื. ืื ืื ื ืขืฉื ืืืืฆืขืืช ืืฆืคื ื ื
ืคืขื ืื ืืืืืง ืืื ืืกืื 2 (ืืืืื ืืฉื ื) ืื ืชืื ื ืจืืคืื ืืงืจืืืื
ืืืื ืืืงืื ืืชืื 0xff.
ื ืืชื ืื ืชื ืืช ืืืชืืื ืฉื ืืืฉืืจืื ืืืืฆืขืืช ืืื ืื ืืืื
ืขื asn1parse. ืฉืงืื ืืช ืืืืืื ืืืชืืื ืขืฆืืืช ื-certs/pca-cert.pem . ืจืฅ asn1parse
ืืืืงืื ืชืฉืืืืช:
openssl asn1parse -in pca-cert.pem
0:d=0 hl=4 l= 742 ืืกืจืื ืืช: ืจืฆืฃ
4:d=1 hl=4 l= 591 ืืกืจืื ืืช: ืจืฆืฃ
8:d=2 hl=2 l= 3 ืืกืจืื ืืช: ืืืฉื [ 0 ]
10:d=3 hl=2 l= 1 prim: ืฉืื :02
13:d=2 hl=2 l= 1 prim: ืฉืื :00
16:d=2 hl=2 l= 13 ืืกืจืื ืืช: ืจืฆืฃ
18:d=3 hl=2 l= 9 prim: OBJECT :md5WithRSAencryption
29:d=3 hl=2 l= 0 prim: NULL
31:d=2 hl=2 l= 92 ืืกืจืื ืืช: ืจืฆืฃ
33:d=3 hl=2 l= 11 ืืกืจืื ืืช: SET
35:d=4 hl=2 l= 9 ืืกืจืื ืืช: ืจืฆืฃ
37:d=5 hl=2 l= 3 prim: OBJECT :countryName
42:d=5 hl=2 l= 2 prim: PRINTABLESTRING :AU
....
599:d=1 hl=2 l= 13 ืืกืจืื ืืช: ืจืฆืฃ
601:d=2 hl=2 l= 9 prim: OBJECT :md5WithRSAencryption
612:d=2 hl=2 l= 0 prim: NULL
614:d=1 hl=3 l= 129 prim: BIT STRING
ื-BIT STRING ืืกืืคื ืืืื ืืช ืืืชืืื ืืคืืขื. ื ืืชื ืืืืฅ ืขื:
openssl asn1parse -in pca-cert.pem -out sig -noout -strparse 614
ื ืืชื ืืืืฅ ืืช ืืืคืชื ืืฆืืืืจื ืฉื ืืืืฉืืจ ืืืืฆืขืืช:
openssl x509 -in test/testx509.pem -pubkey -noout >pubkey.pem
ื ืืชื ืื ืชื ืืช ืืืชืืื ืืืืฆืขืืช:
openssl rsautl -in sig -verify -asn1parse -inkey pubkey.pem -pubin
0:d=0 hl=2 l= 32 ืืกืจืื ืืช: ืจืฆืฃ
2:d=1 hl=2 l= 12 ืืกืจืื ืืช: ืจืฆืฃ
4:d=2 hl=2 l= 8 prim: OBJECT :md5
14:d=2 hl=2 l= 0 prim: NULL
16:d=1 hl=2 l= 16 prim: OCTET STRING
0000 - f3 46 9e aa 1a 4a 73 c9-37 ea 93 00 48 25 08 b5 .F...Js.7...H%..
ืืืื ืืืจืกื ืืื ืชืืช ืฉื ืืื ื ASN1 DigestInfo. ื ืืชื ืืจืืืช ืื ืืขืืืื
ืืฉืืืืฉ ืืื md5. ื ืืชื ืืืืฅ ืืช ืืืืง ืืคืืขื ืฉื ืืืืฉืืจ ืฉื ืืชื ืืืืฆืขืืช:
openssl asn1parse -in pca-cert.pem -out tbs -noout -strparse 4
ืืืขืืืื ืฉืื ืืืืฉื ืขื:
openssl md5 -c tbs
MD5(tbs)= f3:46:9e:aa:1a:4a:73:c9:37:ea:93:00:48:25:08:b5
ืืฉืจ ื ืืชื ืืจืืืช ืืชืืืฉื ืขื ืืขืจื ืืืืืืจ ืืขืื.
ืืฉืชืืฉ ื-rsautlssl ืืืื ืืจื ื ืืืืฆืขืืช ืฉืืจืืชื onworks.net