<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>http://www.qbsd.ru/index.php?action=history&amp;feed=atom&amp;title=OpenSSL%3A_101_%D0%BF%D1%80%D0%B8%D0%B5%D0%BC_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B</id>
	<title>OpenSSL: 101 прием работы - История изменений</title>
	<link rel="self" type="application/atom+xml" href="http://www.qbsd.ru/index.php?action=history&amp;feed=atom&amp;title=OpenSSL%3A_101_%D0%BF%D1%80%D0%B8%D0%B5%D0%BC_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B"/>
	<link rel="alternate" type="text/html" href="http://www.qbsd.ru/index.php?title=OpenSSL:_101_%D0%BF%D1%80%D0%B8%D0%B5%D0%BC_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B&amp;action=history"/>
	<updated>2026-05-16T06:07:37Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.35.2</generator>
	<entry>
		<id>http://www.qbsd.ru/index.php?title=OpenSSL:_101_%D0%BF%D1%80%D0%B8%D0%B5%D0%BC_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B&amp;diff=204&amp;oldid=prev</id>
		<title>Nordwind: Новая страница: «:Данная статья 100 % копипаст с [http://www.openbsd.ru www.openbsd.ru]  == Мини-руководство «шаг за шагом» ==  П…»</title>
		<link rel="alternate" type="text/html" href="http://www.qbsd.ru/index.php?title=OpenSSL:_101_%D0%BF%D1%80%D0%B8%D0%B5%D0%BC_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B&amp;diff=204&amp;oldid=prev"/>
		<updated>2013-06-05T14:09:34Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «:Данная статья 100 % копипаст с [http://www.openbsd.ru www.openbsd.ru]  == Мини-руководство «шаг за шагом» ==  П…»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;:Данная статья 100 % копипаст с [http://www.openbsd.ru www.openbsd.ru]&lt;br /&gt;
&lt;br /&gt;
== Мини-руководство «шаг за шагом» ==&lt;br /&gt;
&lt;br /&gt;
Пример шифрования файла симметричным алгоритмом &amp;lt;tt&amp;gt;des3&amp;lt;/tt&amp;gt; с помощью &amp;lt;tt&amp;gt;openssl enc&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
% openssl enc -des3 -e -in plain.txt -out enc.txt&lt;br /&gt;
enter des-ede3-cbc encryption password:&lt;br /&gt;
Verifying — enter des-ede3-cbc encryption password:&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Расшифровать файл можно, заменив ключ &amp;#039;-e&amp;#039; ключом &amp;#039;-d&amp;#039;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
% openssl enc -des3 -d -in enc.txt -out plain.txt&lt;br /&gt;
enter des-ede3-cbc decryption password:&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Для того, чтобы собеседник мог передать нам файл в зашифрованном виде, а мы бы смогли его расшифровать, стоит воспользоваться ассиметричной криптографией, сгенерировав пару RSA-ключей (публичный и приватный):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
% openssl genrsa -out rsaprivatekey.pem -des3 2048&lt;br /&gt;
Generating RSA private key, 2048 bit long modulus&lt;br /&gt;
……………..+++&lt;br /&gt;
…………….+++&lt;br /&gt;
e is 65537 (0x10001)&lt;br /&gt;
Enter pass phrase for rsaprivatekey.pem:&lt;br /&gt;
Verifying — Enter pass phrase for rsaprivatekey.pem:&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Выставляем корректные права доступа:&lt;br /&gt;
&lt;br /&gt;
 % chmod 600 rsaprivatekey.pem&lt;br /&gt;
&lt;br /&gt;
Получить соответствующий закрытому публичный ключ можно с помощью openssl rsa:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
% openssl rsa -in rsaprivatekey.pem -pubout -out rsapublickey.pem&lt;br /&gt;
Enter pass phrase for rsaprivatekey.pem:&lt;br /&gt;
writing RSA key&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Публичный ключ мы передаем собеседнику. Он шифрует файл на нем, используя &amp;lt;tt&amp;gt;openssl rsautl&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 % openssl rsautl -encrypt -pubin -inkey rsapublickey.pem -in plain.txt -out cipher.txt&lt;br /&gt;
&lt;br /&gt;
Мы получаем файл, расшифровываем его, используя свой секретный ключ:&lt;br /&gt;
&lt;br /&gt;
 % openssl rsault -decrypt -inkey rsaprivatekey.pem -in cipher.txt -out plain.txt&lt;br /&gt;
&lt;br /&gt;
Кроме шифрования, можно также подписывать файлы, предоставляя гарантии, что данный файл послан лично нами, и давая возможность проверить его аутентичность:&lt;br /&gt;
&lt;br /&gt;
 % openssl dgst -sha1 -sign rsaprivatekey.pem -out sign.txt myfile.tar.gz&lt;br /&gt;
&lt;br /&gt;
Все, что нужно получателю файла — это проверить подпись, используя наш публичный ключ:&lt;br /&gt;
&lt;br /&gt;
 % openssl dgst -sha1 -verify rsapublickey.pem -signature sign.txt myfile.tar.gz&lt;br /&gt;
 Verified OK.&lt;br /&gt;
&lt;br /&gt;
Вычислить контрольную сумму файла можно с помощью &amp;lt;tt&amp;gt;openssl dgst&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 % openssl dgst -md5 myfile.tar.gz&lt;br /&gt;
 MD5(myfile.tar.gz) =65b36f8d54b8bab0a787cbd4a8dd8aef&lt;br /&gt;
&lt;br /&gt;
Чтобы быстро сгенерировать пароль, WEP или IPsec-ключи, можно воспользоваться &amp;lt;tt&amp;gt;openssl rand&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 % openssl rand -base64 45&lt;br /&gt;
 0JZmfHQL3WI7PTUYcq1w8yQ8wFE3mB7Wd7vdAYd2A6x0cTHmVYqI/Su3o5qh&lt;br /&gt;
&lt;br /&gt;
Если нужно найти соответствие пароля его md5-шифру, можно использовать &amp;lt;tt&amp;gt;openssl passwd&amp;lt;/tt&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 % openssl passwd −1 mypassword&lt;br /&gt;
 $1$OsmexMtO$0CtV.Lb6nhGOSGKM8jKNO.&lt;br /&gt;
&lt;br /&gt;
Пример подписи почтового сообщения своим сертификатом:&lt;br /&gt;
&lt;br /&gt;
 % openssl smime -sign -signer server.crt -inkey server.key \&lt;br /&gt;
 -in message.txt -text | mail mailbox@domain.ru&lt;br /&gt;
&lt;br /&gt;
А теперь еще зашифруем:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
% openssl smime -encrypt -in message.txt -signer server.crt \&lt;br /&gt;
 -inkey server.key -text | openssl smime -encrypt \&lt;br /&gt;
 -des3 myserver.crt -out mail.msg | mail mailbox@domain.ru&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Чтобы протестировать работу сетевого сервиса, который работает через SSL, выполним:&lt;br /&gt;
&lt;br /&gt;
 % openssl s_client -connect myserver:443&lt;br /&gt;
&lt;br /&gt;
Статья основана на материалах, предоставленных Антоном Карповым [http://www.toxahost.ru/ www.toxahost.ru].&lt;br /&gt;
&lt;br /&gt;
[[Категория:Howto]]&lt;/div&gt;</summary>
		<author><name>Nordwind</name></author>
	</entry>
</feed>