āĻļā§āĻ āĻĻāĻŋāĻ¨!
āĻāĻāĻāĻŋ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻļāĻāĻ¸āĻžāĻĒāĻ¤ā§āĻ° āĻāĻ°ā§āĻ¤ā§āĻĒāĻā§āĻˇ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§, āĻāĻŽāĻ°āĻž āĻļāĻāĻ¸āĻžāĻĒāĻ¤ā§āĻ° āĻāĻ¸ā§āĻ¯ā§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻāĻŦāĻ āĻāĻ āĻļāĻāĻ¸āĻžāĻĒāĻ¤ā§āĻ°āĻā§āĻ˛āĻŋāĻ¤ā§ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻ āĻ¯āĻžāĻāĻžāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĨ¤
āĻā§āĻ¨ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻā§ āĻāĻāĻāĻŋ āĻļāĻāĻ¸āĻžāĻĒāĻ¤ā§āĻ° āĻāĻ¸ā§āĻ¯ā§ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ¸āĻžāĻ°ā§āĻāĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻāĻ°ā§āĻ¤ā§āĻĒāĻā§āĻˇ āĻāĻāĻāĻŋ Pkcs#10 āĻļāĻāĻ¸āĻžāĻĒāĻ¤ā§āĻ° āĻāĻžāĻ°āĻŋ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻˇ āĻ
āĻ¨ā§āĻ°ā§āĻ§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§, āĻ¯āĻžāĻ° '.csr' āĻĢāĻžāĻāĻ˛ āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻ āĻ°āĻ¯āĻŧā§āĻā§ā§ˇ āĻāĻ āĻ
āĻ¨ā§āĻ°ā§āĻ§ā§ āĻāĻāĻāĻŋ āĻāĻ¨āĻā§āĻĄ āĻāĻ°āĻž āĻā§āĻ°āĻŽ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻ¸āĻžāĻ°ā§āĻāĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻāĻ°ā§āĻ¤ā§āĻĒāĻā§āĻˇ āĻāĻžāĻ¨ā§ āĻāĻŋāĻāĻžāĻŦā§ āĻ¸āĻ āĻŋāĻāĻāĻžāĻŦā§ āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻ°āĻ¤ā§ āĻšāĻ¯āĻŧāĨ¤ āĻ
āĻ¨ā§āĻ°ā§āĻ§āĻāĻŋāĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻ¸āĻ°ā§āĻŦāĻāĻ¨ā§āĻ¨ āĻā§ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻļāĻāĻ¸āĻžāĻĒāĻ¤ā§āĻ° āĻ¤ā§āĻ°āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻĄā§āĻāĻž āĻāĻāĻ¯āĻŧāĻ āĻ°āĻ¯āĻŧā§āĻā§ (āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻĄā§āĻāĻž āĻ¸āĻš āĻāĻāĻāĻŋ āĻ¸āĻšāĻ¯ā§āĻā§ āĻ
ā§āĻ¯āĻžāĻ°ā§)āĨ¤
āĻāĻŽāĻ°āĻž āĻĒāĻ°ā§āĻ° āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§ āĻāĻāĻāĻŋ āĻļāĻāĻ¸āĻžāĻĒāĻ¤ā§āĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻā§āĻāĻžāĻŦā§ āĻĒā§āĻ¤ā§ āĻšāĻ¯āĻŧ āĻ¤āĻž āĻĻā§āĻāĻŦ, āĻāĻŦāĻ āĻāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§ āĻāĻŽāĻŋ āĻļāĻāĻ¸āĻžāĻĒāĻ¤ā§āĻ° āĻāĻ°ā§āĻ¤ā§āĻĒāĻā§āĻˇā§āĻ° āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻāĻŽāĻžāĻ¨ā§āĻĄāĻā§āĻ˛āĻŋ āĻĻāĻŋāĻ¤ā§ āĻāĻžāĻ āĻ¯āĻž āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄā§āĻ° āĻĻāĻŋāĻā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻžāĻāĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻ°āĻ¤ā§ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ¤āĻž āĻāĻ°āĻŦā§āĨ¤
āĻ¤āĻžāĻ āĻĒā§āĻ°āĻĨāĻŽā§ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ°ā§āĻāĻŋāĻĢāĻŋāĻā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻāĻŋ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻ°āĻž āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŋ:
openssl ca -batch -in user.csr -out user.crt
ca āĻšāĻ˛ openSSL āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ¯āĻž āĻ¸āĻžāĻ°ā§āĻāĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻāĻ°ā§āĻ¤ā§āĻĒāĻā§āĻˇā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤,
-āĻŦā§āĻ¯āĻžāĻ - āĻāĻāĻāĻŋ āĻļāĻāĻ¸āĻžāĻĒāĻ¤ā§āĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤āĻāĻ°āĻŖ āĻ
āĻ¨ā§āĻ°ā§āĻ§ āĻŦāĻžāĻ¤āĻŋāĻ˛ āĻāĻ°ā§āĨ¤
user.csr â āĻāĻāĻāĻŋ āĻļāĻāĻ¸āĻžāĻĒāĻ¤ā§āĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° āĻ
āĻ¨ā§āĻ°ā§āĻ§ (.csr āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻā§ āĻĢāĻžāĻāĻ˛)āĨ¤
user.crt - āĻ¸āĻžāĻ°ā§āĻāĻŋāĻĢāĻŋāĻā§āĻ (āĻāĻŽāĻžāĻ¨ā§āĻĄā§āĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛)āĨ¤
āĻāĻ āĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻļāĻāĻ¸āĻžāĻĒāĻ¤ā§āĻ° āĻāĻ°ā§āĻ¤ā§āĻĒāĻā§āĻˇāĻā§ āĻ
āĻŦāĻļā§āĻ¯āĻ āĻŦāĻ°ā§āĻŖāĻŋāĻ¤ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ āĻŋāĻ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§
āĻļāĻāĻ¸āĻžāĻĒāĻ¤ā§āĻ° āĻ¯āĻžāĻāĻžāĻāĻāĻ°āĻŖ āĻāĻĻā§āĻļ:
openssl cms -verify -in authenticate.cms -inform PEM -CAfile /Users/âĻâĻ/demoCA/ca.crt -out data.file
cms āĻšāĻ˛ āĻāĻāĻāĻŋ openSSL āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ¯āĻž āĻāĻĒā§āĻ¨āĻāĻ¸āĻāĻ¸āĻāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¸āĻžāĻāĻ¨ āĻāĻ¨, āĻā§āĻ°āĻŋāĻĢāĻžāĻ, āĻĄā§āĻāĻž āĻāĻ¨āĻā§āĻ°āĻŋāĻĒā§āĻ āĻāĻŦāĻ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻā§āĻ°āĻŋāĻĒā§āĻā§āĻā§āĻ°āĻžāĻĢāĻŋāĻ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧāĨ¤
-verify - āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻāĻŽāĻ°āĻž āĻ¸āĻžāĻ°ā§āĻāĻŋāĻĢāĻŋāĻā§āĻ āĻ¯āĻžāĻāĻžāĻ āĻāĻ°āĻŋāĨ¤
authenticate.cms - āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻžāĻ°āĻŋ āĻāĻ°āĻž āĻļāĻāĻ¸āĻžāĻĒāĻ¤ā§āĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ āĻĄā§āĻāĻž āĻ§āĻžāĻ°āĻŖāĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĨ¤
- inform PEM - PEM āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
-CAfile /Users/âĻâĻ/demoCA/ca.crt - āĻ°ā§āĻ āĻ¸āĻžāĻ°ā§āĻāĻŋāĻĢāĻŋāĻā§āĻā§āĻ° āĻĒāĻĨāĨ¤ (āĻāĻāĻŋ āĻāĻžāĻĄāĻŧāĻž āĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ āĻāĻŽāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻžāĻ āĻāĻ°ā§āĻ¨āĻŋ, āĻ¯āĻĻāĻŋāĻ ca.crt-āĻāĻ° āĻĒāĻĨāĻā§āĻ˛āĻŋ openssl.cfg āĻĢāĻžāĻāĻ˛ā§ āĻ˛ā§āĻāĻž āĻāĻŋāĻ˛)
-out data.file â āĻāĻŽāĻŋ āĻĢāĻžāĻāĻ˛ data.file-āĻ āĻĄāĻŋāĻā§āĻ°āĻŋāĻĒā§āĻ āĻāĻ°āĻž āĻĄā§āĻāĻž āĻĒāĻžāĻ āĻžāĻāĨ¤
āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄ āĻ¸āĻžāĻāĻĄā§ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ°ā§āĻāĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻāĻ°ā§āĻ¤ā§āĻĒāĻā§āĻˇ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽ āĻ¨āĻŋāĻŽā§āĻ¨āĻ°ā§āĻĒ:
- āĻŦā§āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°āĻŋāĻ° āĻ°ā§āĻāĻŋāĻ¸ā§āĻā§āĻ°ā§āĻļāĻžāĻ¨:
- āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻļāĻāĻ¸āĻžāĻĒāĻ¤ā§āĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° āĻāĻŦāĻ user.csr āĻĢāĻžāĻāĻ˛ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻĒāĻžāĻā§ˇ
- āĻāĻŽāĻ°āĻž āĻāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§āĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ .bat āĻŦāĻž .cmd āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨ āĻ¸āĻš āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻŋāĨ¤ āĻāĻŽāĻ°āĻž āĻāĻ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻā§āĻĄ āĻĨā§āĻā§ āĻāĻžāĻ˛āĻžāĻ, āĻāĻā§ user.csr āĻĢāĻžāĻāĻ˛ā§ āĻāĻāĻāĻŋ āĻļāĻāĻ¸āĻžāĻĒāĻ¤ā§āĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻ°ā§āĻ§āĻāĻŋ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§āĻāĻŋāĻ˛āĻžāĻŽāĨ¤ āĻāĻŽāĻ°āĻž user.crt āĻ¸āĻžāĻ°ā§āĻāĻŋāĻĢāĻŋāĻā§āĻ āĻ¸āĻš āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻĒāĻžāĻāĨ¤
- āĻāĻŽāĻ°āĻž user.crt āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻĒāĻĄāĻŧāĻŋ āĻāĻŦāĻ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻāĻā§ āĻĒāĻžāĻ āĻžāĻāĨ¤
- āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻ
āĻ¨ā§āĻŽā§āĻĻāĻ¨:
- āĻāĻŽāĻ°āĻž āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻā§āĻ° āĻāĻžāĻ āĻĨā§āĻā§ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ āĻĄā§āĻāĻž āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻāĻāĻŋ authenticate.cms āĻĢāĻžāĻāĻ˛ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻŋāĨ¤
- āĻāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§āĻ° āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧ āĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ .bat āĻŦāĻž .cmd āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨ āĻ¸āĻš āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻŽāĻ°āĻž āĻā§āĻĄ āĻĨā§āĻā§ āĻāĻ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻāĻžāĻ˛āĻžāĻ, āĻĒā§āĻ°ā§āĻŦā§ authenticate.cms-āĻ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻĨā§āĻā§ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ āĻĄā§āĻāĻž āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§āĻāĻŋāĻ˛āĻžāĻŽāĨ¤ āĻāĻŽāĻ°āĻž āĻĄāĻŋāĻā§āĻ°āĻŋāĻĒā§āĻ āĻāĻ°āĻž āĻĄā§āĻāĻž data.file āĻ¸āĻš āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻĒāĻžāĻāĨ¤
- āĻāĻŽāĻ°āĻž data.file āĻĒāĻĄāĻŧāĻŋ āĻāĻŦāĻ āĻŦā§āĻ§āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ āĻĄā§āĻāĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻŋāĨ¤ āĻ āĻŋāĻ āĻāĻŋ āĻā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¤āĻž āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§
āĻĒā§āĻ°āĻĨāĻŽ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§ . āĻ¯āĻĻāĻŋ āĻĄā§āĻāĻž āĻŦā§āĻ§ āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻ āĻ¨ā§āĻŽā§āĻĻāĻ¨ āĻ¸āĻĢāĻ˛ āĻŦāĻ˛ā§ āĻŦāĻŋāĻŦā§āĻāĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤
āĻāĻ āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽāĻā§āĻ˛āĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻ¤ā§, āĻāĻĒāĻ¨āĻŋ āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄ āĻ˛āĻŋāĻāĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻ¯ā§ āĻā§āĻ¨āĻ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻŋāĻ āĻāĻžāĻˇāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤
āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§ āĻāĻŽāĻ°āĻž āĻĻā§āĻāĻŦ āĻāĻŋāĻāĻžāĻŦā§ Retoken āĻĒā§āĻ˛āĻžāĻāĻāĻ¨ āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻžāĻ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧāĨ¤
āĻāĻĒāĻ¨āĻžāĻ° āĻŽāĻ¨ā§āĻ¯ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¨āĻžāĻā§ āĻ§āĻ¨ā§āĻ¯āĻŦāĻžāĻĻ!
āĻāĻ¤ā§āĻ¸: www.habr.com