{"id":4360,"date":"2025-01-06T06:46:41","date_gmt":"2025-01-05T21:46:41","guid":{"rendered":"https:\/\/matoken.org\/blog\/?p=4360"},"modified":"2025-01-06T06:46:42","modified_gmt":"2025-01-05T21:46:42","slug":"encpipe","status":"publish","type":"post","link":"https:\/\/matoken.org\/blog\/2025\/01\/06\/encpipe\/","title":{"rendered":"\u30b7\u30f3\u30d7\u30eb\u306a\u6697\u53f7\u5316\u30c4\u30fc\u30eb\u306eEncpipe"},"content":{"rendered":"<p><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"48\" height=\"48\" viewBox=\"0 0 24 24\"><rect width=\"24\" height=\"24\" fill=\"none\"\/><path fill=\"currentColor\" d=\"M10.98 14.5h2.04l-.556-3.09q.442-.154.73-.543T13.48 10q0-.613-.434-1.047q-.433-.434-1.047-.434t-1.047.434T10.519 10q0 .479.288.867t.73.542zM12 20.962q-3.014-.895-5.007-3.651T5 11.1V5.692l7-2.615l7 2.615V11.1q0 3.454-1.993 6.21T12 20.963m0-1.062q2.6-.825 4.3-3.3t1.7-5.5V6.375l-6-2.23l-6 2.23V11.1q0 3.025 1.7 5.5t4.3 3.3m0-7.88\"\/><\/svg><!-- material-symbols-light:encrypted-outline --><\/p>\n<div class=\"paragraph\">\n<p>\u300c<a href=\"https:\/\/matoken.org\/blog\/2025\/01\/04\/minisign\/\">Minisign\u3067\u30d5\u30a1\u30a4\u30eb\u306b\u7f72\u540d\uff0c\u691c\u8a3c<\/a>\u300d\u306eMinisign\u3067\u7d39\u4ecb\u3055\u308c\u3066\u3044\u305fEncpipe\u3092\u5c11\u3057\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"https:\/\/github.com\/jedisct1\/encpipe\">jedisct1\/encpipe: The dum<sup>H<\/sup>H^Hsimplest encryption tool in the world.<\/a><\/p>\n<\/li>\n<\/ul>\n<\/div>\n<p><!--more--><\/p>\n<div class=\"listingblock\">\n<div class=\"title\">build<\/div>\n<div class=\"content\">\n<pre>$ git clone https:\/\/github.com\/jedisct1\/encpipe\n$ cd encpipe\n$ make<\/pre>\n<\/div>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">Usage<\/div>\n<div class=\"content\">\n<pre>$ .\/encpipe\nUsage:\n    encpipe -G\n    encpipe {-e | -d} {-p &lt;string&gt; | -P &lt;file&gt;} [-i &lt;file&gt;] [-o &lt;file&gt;]\n\nOptions:\n    -G, --passgen          generate a random password\n    -e, --encrypt          encryption mode\n    -d, --decrypt          decryption mode\n    -p, --pass &lt;password&gt;  use &lt;password&gt;\n    -P, --passfile &lt;file&gt;  read password from &lt;file&gt;\n    -i, --in &lt;file&gt;        read input from &lt;file&gt;\n    -o, --out &lt;file&gt;       write output to &lt;file&gt;\n    -h, --help             print this message<\/pre>\n<\/div>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">\u30e9\u30f3\u30c0\u30e0\u306a\u30d1\u30b9\u30ef\u30fc\u30c9\u3092\u751f\u6210<\/div>\n<div class=\"content\">\n<pre>$ .\/encpipe -G\n208294fbcff996f8c859d54d1c8f7d8ac4c0c813a0867abb5b76830c2aa8ac1a\n$ .\/encpipe -G\n311259951f2bfdf5464be05e7eedb88159bf23fdc066adbf89266effea2f9556\n$ .\/encpipe -G | wc -c\n65<\/pre>\n<\/div>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">\u6697\u53f7\u5316<\/div>\n<div class=\"content\">\n<pre>$ .\/encpipe --encrypt \\ <b class=\"conum\">(1)<\/b>\n  -p 'fcfd940ac76997530341232fa3ee32f39a6b40a0477af1c138e6d21d921ae97a' \\ <b class=\"conum\">(2)<\/b>\n  -i .\/README.md \\ <b class=\"conum\">(3)<\/b>\n  -o .\/README.md.encpipe <b class=\"conum\">(4)<\/b>\n  $ cat .\/README.md.encpipe | od -xc | head -4\n0000000    0474    0000    fb09    d6fb    2524    8820    9261    b74c\n          t 004  \\0  \\0  \\t 373 373 326   $   %     210   a 222   L 267\n0000020    fb04    c95f    0df6    218c    1ff5    4a4a    5272    685f\n        004 373   _ 311 366  \\r 214   ! 365 037   J   J   r   R   _   h<\/pre>\n<\/div>\n<\/div>\n<div class=\"colist arabic\">\n<ol>\n<li>\n<p>\u6697\u53f7\u5316\u30e2\u30fc\u30c9<\/p>\n<\/li>\n<li>\n<p>\u30d1\u30b9\u30ef\u30fc\u30c9\u6587\u5b57\u5217\u6307\u5b9a<\/p>\n<\/li>\n<li>\n<p>\u6697\u53f7\u5316\u5bfe\u8c61\u30d5\u30a1\u30a4\u30eb<\/p>\n<\/li>\n<li>\n<p>\u6697\u53f7\u5316\u51fa\u529b\u30d5\u30a1\u30a4\u30eb<\/p>\n<\/li>\n<\/ol>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">\u5fa9\u53f7\u5316<\/div>\n<div class=\"content\">\n<pre>$ .\/encpipe --decrypt \\ <b class=\"conum\">(1)<\/b>\n  -p 'fcfd940ac76997530341232fa3ee32f39a6b40a0477af1c138e6d21d921ae97a' \\ <b class=\"conum\">(2)<\/b>\n  -i .\/README.md.encpipe \\ <b class=\"conum\">(3)<\/b>\n  -o - | \\ <b class=\"conum\">(4)<\/b>\n  head -6\n![CodeQL scan](https:\/\/github.com\/jedisct1\/encpipe\/workflows\/CodeQL%20scan\/badge.svg)\n\nEncpipe\n=======\n\nThe dum^H^H^Hsimplest encryption tool in the world.<\/pre>\n<\/div>\n<\/div>\n<div class=\"colist arabic\">\n<ol>\n<li>\n<p>\u5fa9\u53f7\u5316\u30e2\u30fc\u30c9<\/p>\n<\/li>\n<li>\n<p>\u30d1\u30b9\u30ef\u30fc\u30c9\u6587\u5b57\u5217<\/p>\n<\/li>\n<li>\n<p>\u5165\u529b\u30d5\u30a1\u30a4\u30eb<\/p>\n<\/li>\n<li>\n<p>\u51fa\u529b\u30d5\u30a1\u30a4\u30eb(-\u3067\u6a19\u6e96\u51fa\u529b\u306b)<\/p>\n<\/li>\n<\/ol>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">\u30d1\u30a4\u30d7\u7d4c\u7531\u3067\u5727\u7e2e\u3057\u3064\u3064\u6697\u53f7\u5316\uff0c\u30d1\u30a4\u30d7\u7d4c\u7531\u3067\u5fa9\u53f7\u5316\u3057\u3064\u3064\u5c55\u958b<\/div>\n<div class=\"content\">\n<pre>$ cat README.md | zstd | .\/encpipe -e -p 'easy-pass' -i - -o - &gt; README.md.zstd.encpipe\n$ cat README.md.zstd.encpipe | .\/encpipe -d -p 'easy-pass' -i - -o - | zstdcat | head -4\n![CodeQL scan](https:\/\/github.com\/jedisct1\/encpipe\/workflows\/CodeQL%20scan\/badge.svg)\n\nEncpipe\n=======<\/pre>\n<\/div>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u7d4c\u8def\u3092\u6697\u53f7\u5316<\/div>\n<div class=\"content\">\n<pre>$ nc -l 6666 | .\/encpipe -d -p 'pass' <b class=\"conum\">(1)<\/b>\n$ .\/encpipe -e -p 'pass' -i .\/README.md | nc 127.0.0.1 6666 <b class=\"conum\">(2)<\/b><\/pre>\n<\/div>\n<\/div>\n<div class=\"colist arabic\">\n<ol>\n<li>\n<p>\u53d7\u3051\u53d6\u308a\u5074\u306e\u6e96\u5099\uff0cnc\u3067tcp:6666\u3067\u5f85\u3061\u53d7\u3051\u3066\u7d50\u679c\u3092Encpipe\u3067\u5fa9\u53f7<\/p>\n<\/li>\n<li>\n<p>\u9001\u4fe1\u5074\uff0cEncpipe\u3067\u6697\u53f7\u5316\uff0cnc\u306b\u6d41\u3057\u8fbc\u307f<\/p>\n<\/li>\n<\/ol>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">\u901f\u5ea6\u6bd4\u8f03<\/div>\n<div class=\"content\">\n<pre>$ time dd if=\/dev\/zero bs=1M count=1024 2&gt;\/dev\/null | .\/encpipe -e -p `.\/encpipe -G` &gt; \/dev\/null\n\nreal    0m53.818s\nuser    0m53.378s\nsys     0m0.720s\n$ time dd if=\/dev\/zero bs=1M count=1024 2&gt;\/dev\/null | GPG_TTY=$(tty) gpg -e -r matoken@gmail.com &gt; \/dev\/null\n\nreal    0m5.883s\nuser    0m5.574s\nsys     0m0.644s<\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>Encpipe\u306f\u6848\u5916<a href=\"https:\/\/github.com\/jedisct1\/encpipe\/issues\/7\">\u9045\u3044<\/a>\uff0e<\/p>\n<\/div>\n<div class=\"admonitionblock note\">\n<table  class=\" table table-hover\" >\n<tr>\n<td class=\"icon\">\n<div class=\"title\">Note<\/div>\n<\/td>\n<td class=\"content\">\n\u3053\u306e\u3068\u304d\u306egpg\u306e\u6697\u53f7\u65b9\u5f0f\u306fAES256.CFB\uff0e\n<\/td>\n<\/tr>\n<\/table>\n<\/div>\n<div class=\"paragraph\">\n<p>\u306a\u305c\u3053\u306e\u30c4\u30fc\u30eb\u3092\u4f5c\u3063\u305f\u306e\u304b\u3068\u3044\u3046\u3068GnuPG\u3084OpenSSL\u306e\u5229\u7528\u65b9\u6cd5\u3092\u899a\u3048\u308b\u3088\u308a\u4f7f\u3063\u305f\u307b\u3046\u304c\u901f\u3044\u304b\u3089\u3060\u305d\u3046\u3067\u3059\uff0e\u305f\u3057\u304b\u306b\u3053\u308c\u3089\u306e\u30c4\u30fc\u30eb\u306f\u30aa\u30d7\u30b7\u30e7\u30f3\u304c\u591a\u304f\u5927\u5909\u3067\u3059\u306d\u2026\u2026\uff0e<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">\u74b0\u5883<\/div>\n<div class=\"content\">\n<pre>$ git log --pretty=oneline -1\n7156490a5fa8e0cd1da748451840dfed2d82fe4b (HEAD -&gt; master, origin\/master, origin\/HEAD) Bump year\n$ dpkg-query -W gcc make gpg zstd\ngcc     4:14.2.0-1\ngpg     2.2.45-2\nmake    4.4.1-1\nzstd    1.5.6+dfsg-2\n$ lsb_release -dr\nDescription:    Debian GNU\/Linux trixie\/sid\nRelease:        n\/a\n$ arch\nx86_64<\/pre>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>\u300cMinisign\u3067\u30d5\u30a1\u30a4\u30eb\u306b\u7f72\u540d\uff0c\u691c\u8a3c\u300d\u306eMinisign\u3067\u7d39\u4ecb\u3055\u308c\u3066\u3044\u305fEncpipe\u3092\u5c11\u3057\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e jedisct1\/encpipe: The dumHH^Hsimplest encryption tool [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"webmentions_disabled_pings":false,"webmentions_disabled":false,"activitypub_content_warning":null,"activitypub_content_visibility":null,"activitypub_max_image_attachments":4,"activitypub_interaction_policy_quote":"anyone","activitypub_status":"federated","footnotes":""},"categories":[7,6,199],"tags":[1173,217],"class_list":["post-4360","post","type-post","status-publish","format-standard","hentry","category-debian-linux","category-linux","category-sid","tag-encpipe","tag-encryption"],"_links":{"self":[{"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/posts\/4360","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/comments?post=4360"}],"version-history":[{"count":1,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/posts\/4360\/revisions"}],"predecessor-version":[{"id":4361,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/posts\/4360\/revisions\/4361"}],"wp:attachment":[{"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/media?parent=4360"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/categories?post=4360"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/tags?post=4360"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}