{"id":1879,"date":"2024-02-28T21:27:26","date_gmt":"2024-02-28T12:27:26","guid":{"rendered":"https:\/\/www.rocher.kyoto.jp\/arbr\/?p=1879"},"modified":"2024-03-27T18:11:26","modified_gmt":"2024-03-27T09:11:26","slug":"esp8266%e7%94%a8bearssl_certstore-ino%e3%81%aessl%e6%8e%a5%e7%b6%9a%e7%94%a8%e3%83%95%e3%82%a1%e3%82%a4%e3%83%ab%e6%9b%b4%e6%96%b0","status":"publish","type":"post","link":"https:\/\/www.rocher.kyoto.jp\/arbr\/?p=1879","title":{"rendered":"ESP8266\u7528(BearSSL_CertStore.ino)\u306eSSL\u63a5\u7d9a\u7528\u30d5\u30a1\u30a4\u30eb\u66f4\u65b0"},"content":{"rendered":"\n<p>ESP8266(ESP-WROOM-02)\u306e\u5185\u5bb9\u3002ESP-WROOM-32\u3067\u306f\u306a\u3044\u306e\u3067\u6ce8\u610f\u3002<\/p>\n\n\n\n<p>\u30b3\u30de\u30f3\u30c9\u30d7\u30ed\u30f3\u30d7\u30c8\u306b\u3066<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-dark-gray-background-color has-text-color has-background has-link-color wp-elements-84ddbf21cf61a9a93326e319abdb0c87\"><code>cd C:\\Users\\kitam\\Documents\\ArduinoData\\packages\\esp8266\\hardware\\esp8266\\3.1.2\\libraries\\ESP8266WiFi\\examples\\BearSSL_CertStore\npython certs-from-mozilla.py\n<\/code><\/pre>\n\n\n\n<p>\u8db3\u308a\u306a\u3044\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u51fa\u305f\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Traceback (most recent call last):\n  File \"C:\\Users\\kitam\\Documents\\ArduinoData\\packages\\esp8266\\hardware\\esp8266\\3.1.2\\libraries\\ESP8266WiFi\\examples\\BearSSL_CertStore\\certs-from-mozilla.py\", line 28, in &lt;module&gt;\n    raise Exception(\"You need the program 'ar' from xtensa-lx106-elf found here: (esp8266-arduino-core)\/hardware\/esp8266com\/esp8266\/tools\/xtensa-lx106-elf\/xtensa-lx106-elf\/bin\/ar\")\nException: You need the program 'ar' from xtensa-lx106-elf found here: (esp8266-arduino-core)\/hardware\/esp8266com\/esp8266\/tools\/xtensa-lx106-elf\/xtensa-lx106-elf\/bin\/ar\n<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">ar.exe\u306e\u30b3\u30d4\u30fc<\/h2>\n\n\n\n<p>\u30e1\u30c3\u30bb\u30fc\u30b8\u3068\u30d1\u30b9\u304c\u3060\u3044\u3076\u9055\u3046\u3051\u3069\u4e0b\u306b\u3044\u305f\u3002microsoft\u30b9\u30c8\u30a2\u304b\u3089\u5165\u308c\u308b\u3068\u89e6\u308c\u306a\u3044\u3068\u3053\u308d\u306b\u3042\u308b\u304b\u3082\u3002<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">C:\\Users\\kitam\\AppData\\Local\\Arduino15\\packages\\esp8266\\tools\\xtensa-lx106-elf-gcc\\3.1.0-gcc10.3-e5f9fec\\xtensa-lx106-elf\\bin<\/pre>\n\n\n\n<pre class=\"wp-block-code has-white-color has-dark-gray-background-color has-text-color has-background has-link-color wp-elements-9b410e5d67aef87c8c742ff089c45a43\"><code>if which('ar') is None and not os.path.isfile('.\/ar') and not os.path.isfile('<strong>.\/ar.exe'<\/strong>):<\/code><\/pre>\n\n\n\n<p>\u516c\u5f0f\u306eexample\u30d5\u30a9\u30eb\u30c0\u306e\u4e2d\u3067\u4f5c\u696d\u3057\u305f\u304f\u306a\u3044\u306e\u3067\u3001example\u306eBearSSL_CertStore.ino\u3092\u3068\u308a\u3042\u3048\u305a\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u306b\u4fdd\u5b58\u3002\u3000\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\u306b\u4f5c\u3063\u305f\u30d5\u30a9\u30eb\u30c0\u306bar.exe\u3092\u4fdd\u5b58<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-dark-gray-background-color has-text-color has-background has-link-color wp-elements-2fbd05f12d2ca6defaf11884b9a1132c\"><code>C:\\Users\\kitam\\Desktop\\BearSSL_CertStore&gt;dir\n \u30c9\u30e9\u30a4\u30d6 C \u306e\u30dc\u30ea\u30e5\u30fc\u30e0 \u30e9\u30d9\u30eb\u304c\u3042\u308a\u307e\u305b\u3093\u3002\n \u30dc\u30ea\u30e5\u30fc\u30e0 \u30b7\u30ea\u30a2\u30eb\u756a\u53f7\u306f C449-20E0 \u3067\u3059\n\n C:\\Users\\kitam\\Desktop\\BearSSL_CertStore \u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\n\n2024\/02\/29  13:07    &lt;DIR&gt;          .\n2024\/02\/28  21:25    &lt;DIR&gt;          ..\n2024\/02\/20  18:35         1,245,184 ar.exe\n2024\/02\/20  18:35             5,206 BearSSL_CertStore.ino\n2024\/02\/20  18:35             2,697 certs-from-mozilla.py<\/code><\/pre>\n\n\n\n<p><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">openssl\u306e\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb<\/h2>\n\n\n\n<p>\u5b9f\u884c\u3057\u305f\u3089\u3001openssl\u3082\u3044\u308b\u3068<\/p>\n\n\n\n<p class=\"has-white-color has-dark-gray-background-color has-text-color has-background has-link-color wp-elements-fae16658f3b9ea73f2bf2ad644c3427f\">C:\\Users\\kitam\\Documents\\ArduinoData\\packages\\esp8266\\hardware\\esp8266\\3.1.2\\libraries\\ESP8266WiFi\\examples\\BearSSL_CertStore&gt;cd C:\\Users\\kitam\\Desktop\\BearSSL_CertStore<\/p>\n\n\n\n<p class=\"has-white-color has-dark-gray-background-color has-text-color has-background has-link-color wp-elements-afa5e60d053cdb524b8458ec34e736e8\">C:\\Users\\kitam\\Desktop\\BearSSL_CertStore&gt;python certs-from-mozilla.py<br>Traceback (most recent call last):<br>File &#8220;C:\\Users\\kitam\\Desktop\\BearSSL_CertStore\\certs-from-mozilla.py&#8221;, line 30, in<br>raise Exception(&#8220;You need to have openssl in PATH, installable from https:\/\/www.openssl.org\/&#8221;)<br>Exception: You need to have openssl in PATH, installable from https:\/\/www.openssl.org\/<\/p>\n\n\n\n<p>\u30e1\u30c3\u30bb\u30fc\u30b8\u306b\u3042\u308bURL\u306bwindows\u306e\u30d0\u30a4\u30ca\u30ea\u306a\u304b\u3063\u305f\u306e\u3067<a href=\"https:\/\/slproweb.com\/products\/Win32OpenSSL.html\" data-type=\"link\" data-id=\"https:\/\/slproweb.com\/products\/Win32OpenSSL.html\">\u3053\u3061\u3089<\/a>\u304b\u3089\u843d\u3068\u3059\u3002\u3068\u308a\u3042\u3048\u305a\u6700\u65b0\u306e3.2.1\u306eexe\u3002<\/p>\n\n\n\n<p>\u30c0\u30d6\u30eb\u30af\u30ea\u30c3\u30af\u3057\u3066\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3002path\u901a\u3059\u3068\u4ed6\u306e\u30c4\u30fc\u30eb\u985e\u3068\u91cd\u306a\u308a\u305d\u3046\u306a\u306e\u3067\u3068\u308a\u3042\u3048\u305a\u30d1\u30b9\u306e\u8a2d\u5b9a\u306f\u4e00\u6642\u7684\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-dark-gray-background-color has-text-color has-background has-link-color wp-elements-a05b0677f76a0515506c393180ffcc4b\"><code>C:\\Users\\kitam\\Desktop\\BearSSL_CertStore&gt;set PATH=%PATH%;C:\\Program Files\\OpenSSL-Win64\\bin\n\nC:\\Users\\kitam\\Desktop\\BearSSL_CertStore&gt;openssl -version\nOpenSSL 3.2.1 30 Jan 2024 (Library: OpenSSL 3.2.1 30 Jan 2024)\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">python\u306e\u52d5\u4f5c\u6587\u5b57\u30b3\u30fc\u30c9\u4e00\u6642\u5909\u66f4<\/h2>\n\n\n\n<p>\u4e00\u898b\u52d5\u3044\u3066\u305d\u3046\u306b\u898b\u3048\u305f\u3051\u3069\u30a8\u30e9\u30fc\u51fa\u3066\u3044\u308b<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">C:\\Users\\kitam\\Desktop\\BearSSL_CertStore&gt;python certs-from-mozilla.py &gt; out.txt\nWarning: Reading certificate from stdin since no -in or -new option is given\nWarning: Reading certificate from stdin since no -in or -new option is given\nWarning: Reading certificate from stdin since no -in or -new option is given\nWarning: Reading certificate from stdin since no -in or -new option is given\nWarning: Reading certificate from stdin since no -in or -new option is given\nWarning: Reading certificate from stdin since no -in or -new option is given\nWarning: Reading certificate from stdin since no -in or -new option is given\nWarning: Reading certificate from stdin since no -in or -new option is given\nWarning: Reading certificate from stdin since no -in or -new option is given\nWarning: Reading certificate from stdin since no -in or -new option is given\nWarning: Reading certificate from stdin since no -in or -new option is given\nWarning: Reading certificate from stdin since no -in or -new option is given\nWarning: Reading certificate from stdin since no -in or -new option is given\nTraceback (most recent call last):\n  File \"C:\\Users\\kitam\\Desktop\\BearSSL_CertStore\\certs-from-mozilla.py\", line 64, in &lt;module&gt;\n    print(names[i] + \" -&gt; \" + certName)\n<strong>UnicodeEncodeError: 'cp932' codec can't encode character '\\xf3' in position 24: illegal multibyte sequence<\/strong><\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\"> C:\\Users\\kitam\\Desktop\\BearSSL_CertStore\\data \u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\n\n2024\/02\/29  13:54    &lt;DIR&gt;          .\n2024\/02\/29  13:54    &lt;DIR&gt;          ..\n2024\/02\/29  13:54             1,463 ca_000.der\n2024\/02\/29  13:54               837 ca_001.der\n2024\/02\/29  13:54             1,349 ca_002.der\n2024\/02\/29  13:54               442 ca_003.der\n2024\/02\/29  13:54               502 ca_004.der\n2024\/02\/29  13:54             1,011 ca_005.der\n2024\/02\/29  13:54               784 ca_006.der\n2024\/02\/29  13:54               617 ca_007.der\n2024\/02\/29  13:54               959 ca_008.der\n2024\/02\/29  13:54             1,494 ca_009.der\n2024\/02\/29  13:54             1,476 ca_010.der\n2024\/02\/29  13:54             1,560 ca_011.der\n2024\/02\/29  13:54             1,523 ca_012.der\n              13 \u500b\u306e\u30d5\u30a1\u30a4\u30eb              14,017 \u30d0\u30a4\u30c8\n               2 \u500b\u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea  21,649,969,152 \u30d0\u30a4\u30c8\u306e\u7a7a\u304d\u9818\u57df<\/pre>\n\n\n\n<p>data\/certs.ar\u3068\u3044\u3046\u30d5\u30a1\u30a4\u30eb\u304c\u4e00\u3064\u3067\u304d\u308b\u306f\u305a\u3060\u304c\u4e2d\u9593\u30d5\u30a1\u30a4\u30eb\u306e\u751f\u6210\u9014\u4e2d\u3067\u7d42\u308f\u3063\u3066\u3044\u308b\u3002<\/p>\n\n\n\n<p>pytho\u306e\u6587\u5b57\u30b3\u30fc\u30c9\u3092\u4e00\u6642UTF8\u306b\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-dark-gray-background-color has-text-color has-background has-link-color wp-elements-927c4bc73fe3094e0444a33bf0eaf6d3\"><code>C:\\Users\\kitam\\Desktop\\BearSSL_CertStore&gt;set PYTHONUTF8=1<\/code><\/pre>\n\n\n\n<p>\u6539\u3081\u3066\u5b9f\u884c\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-dark-gray-background-color has-text-color has-background has-link-color wp-elements-a611c360bf84b87e107283869c8b0fe0\"><code>C:\\Users\\kitam\\Desktop\\BearSSL_CertStore&gt;python certs-from-mozilla.py &gt; out.txt\nWarning: Reading certificate from stdin since no -in or -new option is given\nWarning: Reading certificate from stdin since no -in or -new option is given\nWarning: Reading certificate from stdin since no -in or -new option is given\n\uff08\u9014\u4e2d\u7701\u7565\u3001\u4e2d\u9593\u30d5\u30a1\u30a4\u30eb\u3054\u3068\u306b\u4e0a\u306e\u884c\u304c\u3067\u308b\u3002\u5408\u8a0850\u884c\u3050\u3089\u3044\uff09\n\nC:\\Users\\kitam\\Desktop\\BearSSL_CertStore&gt;dir data\n \u30c9\u30e9\u30a4\u30d6 C \u306e\u30dc\u30ea\u30e5\u30fc\u30e0 \u30e9\u30d9\u30eb\u304c\u3042\u308a\u307e\u305b\u3093\u3002\n \u30dc\u30ea\u30e5\u30fc\u30e0 \u30b7\u30ea\u30a2\u30eb\u756a\u53f7\u306f C449-20E0 \u3067\u3059\n\n C:\\Users\\kitam\\Desktop\\BearSSL_CertStore\\data \u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\n\n2024\/02\/29  14:00    &lt;DIR&gt;          .\n2024\/02\/29  14:00    &lt;DIR&gt;          ..\n2024\/02\/29  14:00           189,714 certs.ar\n               1 \u500b\u306e\u30d5\u30a1\u30a4\u30eb             189,714 \u30d0\u30a4\u30c8\n               2 \u500b\u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea  21,636,599,808 \u30d0\u30a4\u30c8\u306e\u7a7a\u304d\u9818\u57df<\/code><\/pre>\n\n\n\n<p>\u3067\u304d\u305f\u6a21\u69d8\u3002<\/p>\n\n\n\n<p>\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u306e\u624b\u9806\u306f<a href=\"https:\/\/www.rocher.kyoto.jp\/arbr\/?p=1886\">\u3053\u3061\u3089<\/a>\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>ESP8266(ESP-WROOM-02)\u306e\u5185\u5bb9\u3002ESP-WROOM-32\u3067\u306f\u306a\u3044\u306e\u3067\u6ce8\u610f\u3002 \u30b3\u30de\u30f3\u30c9\u30d7\u30ed\u30f3\u30d7\u30c8\u306b\u3066 \u8db3\u308a\u306a\u3044\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u51fa\u305f\u3002 Traceback (most recent call last): Fi [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[117],"tags":[123,132],"class_list":["post-1879","post","type-post","status-publish","format-standard","hentry","category-117","tag-esp","tag-esp-wroom-02"],"_links":{"self":[{"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=\/wp\/v2\/posts\/1879","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1879"}],"version-history":[{"count":6,"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=\/wp\/v2\/posts\/1879\/revisions"}],"predecessor-version":[{"id":2050,"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=\/wp\/v2\/posts\/1879\/revisions\/2050"}],"wp:attachment":[{"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1879"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1879"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rocher.kyoto.jp\/arbr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1879"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}