G. Патентное заявление
Следует иметь в виду, что применение ряда алгоритмов ограничено действующими патентами. К их числу относятся, например, SSL (патент США No. 5,657,390; Netscape). Существуют ограничения на коммерческое использование алгоритма RSA (RSA Data Security, Inc.). Политика компании Netscape в этой области достаточно либеральна.
Многие приложения допускают как использование SSL, так и TLS протокола. SSL и TLS при работе предполагают следующие шаги:
Согласование использования того или иного протокола между клиентом и сервером. На этом этапе определяется и тип шифра, который будет использован при последующем обмене данными. При этом может быть согласовано применение либо симметричного, либо ассимметричного криптографического алгоритма.
По завершении согласования применения шифра осуществляется аутентификация сервера и формируется симметричный ключ, поторый будет использован при последующем обмене. Это делается с применением открытого ключа и сертификатов X.509. Сертификат получается от соответствующего сертификационного центра (СА), который проверяет идентичность сервера.
Это односторонняя аутентификация является единственно обязательной процедурой. Пользователь должен убедиться, что он работает с подлинным сервером, который ему нужен. После этого производится аутентификация пользователя с привлечением его имени и пароля, возможна и мультифакторная аутентификация.
Симметричный ключ, зашифрованный с помощью открытого ключа, посылается серверу. Открытый ключ для сервера включается в сертификат проверенный сертификационным центром. После того как симметричные ключи получены, все последующие данные шифруются посредством симметричного ключа. Это делается потому, что алгоритм с симметричным ключом работает быстрее. Работа продолжается до конца сессии или до завершения времени пригодности ключа.
Литература
[3DES] | W. Tuchman, «Hellman Presents No Shortcut Solutions To DES», IEEE Spectrum, v. 16, n. 7, Июль 1979, pp40-41. |
[BLEI] | Bleichenbacher D., «Chosen Ciphertext Attacks against Protocols Based on RSA Encryption Standard PKCS #1» in Advances in Cryptology — CRYPTO'98, LNCS vol. 1462, pages: 1-12, 1998. |
[DES] | ANSI X3.106, «American National Standard for Information Systems-Data Link Encryption», American National Standards Institute, 1983. |
[DH1] | W. Diffie and M. E. Hellman, «New Directions in Cryptography», IEEE Transactions on Information Theory, V. IT-22, n. 6, Jun 1977, pp. 74-84. |
[DSS] | NIST FIPS PUB 186, «Digital Signature Standard», National Institute of Standards and Technology, U.S. Department of Commerce, May 18, 1994. |
[RFC959] | Postel J., and J. Reynolds, «File Transfer Protocol», STD-9, RFC-959, October 1985. |
[RFC1945] | Berners-Lee, T., Fielding, R., and H. Frystyk, «Hypertext Transfer Protocol — HTTP/1.0», RFC-1945, Май 1996. |
[RFC2104] | Krawczyk, H., Bellare, M., and R. Canetti, «HMAC: Keyed-Hashing for Message Authentication», RFC-2104, Февраль 1997. |
[IDEA] | X. Lai, «On the Design and Security of Block Ciphers», ETH Series in Information Processing, v. 1, Konstanz: Hartung-Gorre Verlag, 1992. |
[RFC1319] | Kaliski, B., «The MD2 Message Digest Algorithm», RFC-1319, Апрель 1992. |
[RFC1321] | R. Rivest, «Алгоритм цифровых подписей MD5», RFC 1321, Апрель 1992. |
[PKCS1] | RSA Laboratories, «PKCS #1: RSA Encryption Standard», version 1.5, Ноябрь 1993. |
[PKCS6] | RSA Laboratories, «PKCS #6: RSA Extended Certificate Syntax Standard», version 1.5, Ноябрь 1993. |
[PKCS7] | RSA Laboratories, «PKCS #7: RSA Cryptographic Message Syntax Standard», version 1.5, Ноябрь 1993. |
[RFC2459] | Housley, R., Ford, W., Polk, W. и D. Solo, «Internet Public Key Infrastructure: Part I: X.509 Certificate and CRL Profile», RFC-2459, Январь 1999. |
[RFC2268] | Rivest, R., «A Description of the RC2(r) Encryption Algorithm», RFC 2268, Январь 1998. |
[RC4] | Thayer, R. и K. Kaukonen, A Stream Cipher Encryption Algorithm, Work in Progress. |
[RSA] | R. Rivest, A. Shamir, and L. M. Adleman, «A Method for Obtaining Digital Signatures and Public-Key Cryptosystems», Communications of the ACM, v. 21, n. 2, Feb 1978, pp. 120-126. |
[RSADSI] | Contact RSA Data Security, Inc., Tel: 415-595-8782 |
[SCH] | B. Schneier. Applied Cryptography: Protocols, Algorithms, and Source Code in C, Published by John Wiley & Sons, Inc. 1994. |
[SHA] | NIST FIPS PUB 180-1, «Secure Hash Standard», National Institute of Standards and Technology, U.S. Department of Commerce, Work in Progress, May 31, 1994. |
[SSL2] | Hickman, Kipp, «The SSL Protocol», Netscape Communications Corp., Feb 9, 1995. |
[SSL3] | A. Frier, P. Karlton, and P. Kocher, «The SSL 3.0 Protocol», Netscape Communications Corp., Nov 18, 1996. |
[RFC793] | J. Postel, «Протокол управления передачей (TCP)», RFC 793, Сентябрь 1981. |
[RFC854] | Postel J., and J. Reynolds, «Telnet Protocol Specifications», STD-8, RFC-854, Май 1993. |
[RFC855] | Postel J., and J. Reynolds, «Telnet Option Specifications», STD-8, RFC-855, Май 1993. |
[X509] | CCITT. Recommendation X.509: «The Directory — Authentication Framework». 1988. |
[RFC1832] | R. Srinivansan, Sun Microsystems, RFC-1832: XDR: External Data Representation Standard, Август 1995. |
Архивы по рассматриваемой тематике смотрите на сервере: http://www.imc.org/ietf-tls/mail-archive/
Адреса авторов
Christopher Allen
Certicom
EMail: moc.mocitrec@nellac
Tim Dierks
Certicom
EMail: moc.mocitrec@skreidt