{"id":2810,"date":"2020-06-12T07:10:21","date_gmt":"2020-06-11T22:10:21","guid":{"rendered":"http:\/\/matoken.org\/blog\/?p=2810"},"modified":"2020-07-28T22:43:49","modified_gmt":"2020-07-28T13:43:49","slug":"calculate-the-address-to-use-in-tor-hidden-service-vanity-addresses","status":"publish","type":"post","link":"https:\/\/matoken.org\/blog\/2020\/06\/12\/calculate-the-address-to-use-in-tor-hidden-service-vanity-addresses\/","title":{"rendered":"tor\u306ehidden service\u3067\u4f7f\u3046\u30a2\u30c9\u30ec\u30b9\u3092\u8a08\u7b97\u3059\u308b(Vanity Addresses)"},"content":{"rendered":"<div id=\"preamble\">\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>\u6700\u8fd1\u3053\u306e\u3088\u3046\u306a\u8a18\u4e8b\u3092\u8aad\u307f\u307e\u3057\u305f\uff0e<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li><a href=\"https:\/\/gigazine.net\/news\/20200605-google-block-gitbook\/\">Google\u306b\u30c9\u30e1\u30a4\u30f3\u3092\u30d6\u30ed\u30c3\u30af\u3055\u308c\u305f\u30a6\u30a7\u30d6\u30b5\u30fc\u30d3\u30b9\u304c\u300cCloudflare\u306b\u4e57\u308a\u63db\u3048\u308b\u300d\u3068\u6068\u307f\u7bc0 &#8211; GIGAZINE<\/a><\/li>\n<\/ul>\n<\/div>\n<div class=\"paragraph\">\n<p>\u4eca\u306e\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u306f\u30c9\u30e1\u30a4\u30f3\u983c\u308a\u306a\u5272\u306b\u5358\u4e00\u969c\u5bb3\u70b9\u3068\u306a\u3063\u3066\u3057\u307e\u3063\u3066\u3042\u307e\u308a\u3088\u308d\u3057\u304f\u306a\u3044\uff0e\u3067\u3082\u9003\u3052\u9053\u304c\u3042\u307e\u308a\u306a\u3044\u306e\u3067\u3059\u3088\u306d\u2026\u2026\uff0e<br \/>\n\u3068\u308a\u3042\u3048\u305a\u4ee5\u524d\u304b\u3089\u305d\u306e\u3046\u3061\u3084\u308d\u3046\u3068\u601d\u3063\u3066\u653e\u7f6e\u3057\u3066\u3044\u305ftor\u306ehidden service\u3067\u30df\u30e9\u30fc\u3092\u7acb\u3066\u308b\u306e\u3092\u3084\u3063\u3066\u307f\u3088\u3046\u304b\u306a\u3068\u601d\u3044\u7acb\u3061\u307e\u3057\u305f\uff0e<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\u3068\u308a\u3042\u3048\u305a <code>\/etc\/tor\/torrc<\/code> \u3067\u4ee5\u4e0b\u306e\u3042\u305f\u308a\u3092\u6709\u52b9\u306b\u3057\u3066tor\u3092\u518d\u8d77\u52d5\u3057\u3066httpd\u306e\u8a2d\u5b9a\u3092\u3059\u308b\u3060\u3051\u3067\u52d5\u304d\u307e\u3059\uff0e<\/p>\n<\/div>\n<div class=\"listingblock shell\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>HiddenServiceDir \/var\/lib\/tor\/hidden_service\/\nHiddenServicePort 80 127.0.0.1:80<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\u3053\u306e\u3068\u304d\u306e\u30a2\u30c9\u30ec\u30b9\u306ftor\u518d\u8d77\u52d5\u5f8c\u306b <code>HiddenServiceDir<\/code> \u4ee5\u4e0b\u306b\u4f5c\u3089\u308c\u308b <code>hostname<\/code> \u30d5\u30a1\u30a4\u30eb\u306e\u4e2d\u306e\u540d\u524d\u306b\u306a\u308a\u307e\u3059\uff0e<\/p>\n<\/div>\n<div class=\"listingblock shell\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>$ sudo cat \/var\/lib\/tor\/hidden_service\/hostname\ntbiettfnprnqpoccrz3ll7hioprbyjoam2n6okihpadf5ukaa4hwrwad.onion<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\u3053\u306e\u30a2\u30c9\u30ec\u30b9\u306f[a-z|3-7]\u306e32\u6587\u5b57(BASE32)\u304b\u3089\u306a\u308b16\u6587\u5b57\u306e onion v2 \u30a2\u30c9\u30ec\u30b9\u3068\uff0c56\u6587\u5b57\u306e onion v3 \u30a2\u30c9\u30ec\u30b9\u304c\u3042\u3063\u3066\uff0c\u6700\u8fd1\u306f\u5f8c\u8005\u306ev3\u30a2\u30c9\u30ec\u30b9\u304c\u898f\u5b9a\u5024\u306b\u306a\u3063\u3066\u3044\u308b\u3088\u3046\u3067\u3059\uff0e\u9375\u306f RSA \u304b\u3089 ed25519 \u306b\u306a\u3063\u3066\u3044\u307e\u3059\uff0e<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Onion v2 \u306f\u30db\u30b9\u30c8\u30cd\u30fc\u30e0\u304b\u3089\u79d8\u5bc6\u9375\u3092\u6c42\u3081\u308b\u306e\u306b\u73fe\u5b9f\u7684\u306a\u6642\u9593\u3067\u6e08\u3080\u306e\u304c\u8fd1\u3065\u3044\u3066\u304d\u3066\u3044\u308b\u3088\u3046\u306a\u306e\u3067\u3068\u3066\u3082\u9577\u304f\u3066\u4f7f\u3044\u3065\u3089\u3044\u3067\u3059\u304c\u3053\u308c\u304b\u3089\u306fOnion v3 \u30a2\u30c9\u30ec\u30b9\u306b\u3057\u305f\u307b\u3046\u304c\u826f\u3055\u305d\u3046\u3067\u3059\uff0e<br \/>\n\u4eca\u306fv2,v3 \u3092\u4f75\u7528\u3057\u3066\u3044\u308b\u3068\u3053\u308d\u3082\u591a\u3044\u3088\u3046\u3067\u3059\uff0e<\/p>\n<\/div>\n<table  class=\"tableblock frame-all grid-all stretch table table-hover\" >\n<colgroup>\n<col style=\"width: 33.3333%;\"\/>\n<col style=\"width: 33.3333%;\"\/>\n<col style=\"width: 33.3334%;\"\/>\n<\/colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"><\/th>\n<th class=\"tableblock halign-left valign-top\">Onion v2<\/th>\n<th class=\"tableblock halign-left valign-top\">Onion v3<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">hostname\u6587\u5b57\u9577<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">16<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">56<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\u9375\u5f62\u5f0f<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">RSA<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">ed25519<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">\u9375\u30d5\u30a1\u30a4\u30eb\u540d<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">private_key<\/p>\n<\/td>\n<td class=\"tableblock halign-left valign-top\">\n<p class=\"tableblock\">hs_ed25519_secret_key hs_ed25519_public_key<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div class=\"paragraph\">\n<p>(\u7121\u99c4\u306b)\u30a2\u30c9\u30ec\u30b9\u3092\u8a08\u7b97\u3057\u3066\u597d\u307f\u306e\u5358\u8a9e\u306b\u30de\u30c3\u30c1\u3057\u305f\u3082\u306e\u3092\u63a2\u3059(\u4f8b\u3048\u3070matoken\u304b\u3089\u59cb\u307e\u308b\u30a2\u30c9\u30ec\u30b9\u3092\u63a2\u3059\u3068\u304b)\u3053\u3068\u304c\u53ef\u80fd\u3067\u3059\uff0e<br \/>\n\u3053\u3046\u3044\u3063\u305f\u30a2\u30c9\u30ec\u30b9\u306fVanity Addresses \u3068\u3044\u3046\u3088\u3046\u3067\u3059\uff0e<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\u4ed6\u306b\u3082\u30a2\u30c9\u30ec\u30b9\u3092\u58f2\u3063\u3066\u3044\u308b\u3068\u3053\u308d\u3082\u3042\u308a\u307e\u3059\u304c\uff0c\u76f8\u624b\u306f\u79d8\u5bc6\u9375\u3092\u6301\u3063\u3066\u3044\u308b\u308f\u3051\u3067\u3042\u307e\u308a\u3088\u304f\u306a\u3044\u3068\u601d\u3044\u307e\u3059\uff0e<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_onion_v2_\u30a2\u30c9\u30ec\u30b9\u3092_eschalot_\u3067\u63a2\u3059\">Onion v2 \u30a2\u30c9\u30ec\u30b9\u3092 <code>eschalot<\/code> \u3067\u63a2\u3059<\/h2>\n<div class=\"sectionbody\">\n<div class=\"quoteblock\">\n<blockquote>\n<div class=\"paragraph\">\n<p>add 2020-07-28)<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>Onion v2 \u30a2\u30c9\u30ec\u30b9\u306f2021\u5e7411\u6708\u3042\u305f\u308a\u3067\u4f7f\u3048\u306a\u304f\u306a\u308b\u3088\u3046\u3067\u3059\uff0e<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li><a href=\"https:\/\/blog.torproject.org\/v2-deprecation-timeline\">Onion Service version 2 deprecation timeline | Tor Blog<\/a><\/li>\n<\/ul>\n<\/div>\n<\/blockquote>\n<\/div>\n<div class=\"paragraph\">\n<p>Onion v2 \u30a2\u30c9\u30ec\u30b9\u3092 <code>eschalot<\/code> \u3068\u3044\u3046\u30c4\u30fc\u30eb\u3092\u4f7f\u3063\u3066\u307f\u307e\u3059\uff0e<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li><a href=\"https:\/\/github.com\/ReclaimYourPrivacy\/eschalot\">ReclaimYourPrivacy\/eschalot: It is important to stress that we have not written this piece of software (see LICENSE)<\/a><\/li>\n<\/ul>\n<\/div>\n<div class=\"listingblock shell\">\n<div class=\"title\">\u5c0e\u5165<\/div>\n<div class=\"content\">\n<pre class=\"highlight\"><code>$ sudo apt install libssl-dev\n$ git clone https:\/\/github.com\/ReclaimYourPrivacy\/eschalot\n$ cd eschalot\n$ make\n$ .\/eschalot\nVersion: 1.2.0\n\nusage:\neschalot [-c] [-v] [-t count] ([-n] [-l min-max] -f filename) | (-r regex) | (-p prefix)\n  -v         : verbose mode - print extra information to STDERR\n  -c         : continue searching after the hash is found\n  -t count   : number of threads to spawn default is one)\n  -l min-max : look for prefixes that are from 'min' to 'max' characters long\n  -n         : Allow digits to be part of the prefix (affects wordlist mode only)\n  -f filename: name of the text file with a list of prefixes\n  -p prefix  : single prefix to look for (1-16 characters long)\n  -r regex   : search for a POSIX-style regular expression\n\nExamples:\n  eschalot -cvt4 -l8-12 -f wordlist.txt &gt;&gt; results.txt\n  eschalot -v -r '^test|^exam'\n  eschalot -ct5 -p test\n\n  base32 alphabet allows letters [a-z] and digits [2-7]\n  Regex pattern examples:\n    xxx           must contain 'xxx'\n    ^foo          must begin with 'foo'\n    bar$          must end with 'bar'\n    b[aoeiu]r     must have a vowel between 'b' and 'r'\n    '^ab|^cd'     must begin with 'ab' or 'cd'\n    [a-z]{16}     must contain letters only, no digits\n    ^dusk.*dawn$  must begin with 'dusk' and end with 'dawn'\n    [a-z2-7]{16}  any name - will succeed after one iteration<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\u4ee5\u4e0b\u306f <code>-t<\/code> \u3067\u30b9\u30ec\u30c3\u30c9\u6570\u3092\u6307\u5b9a\uff0c<code>-v<\/code> \u3067\u5197\u9577\u51fa\u529b\uff0c<code>-p<\/code> \u3067 <code>abc<\/code> \u65b9\u59cb\u307e\u308b\u30db\u30b9\u30c8\u540d\u3092\u63a2\u3057\u3066\u3044\u307e\u3059\uff0e<br \/>\n\u898b\u3064\u304b\u308b\u3068\u6a19\u6e96\u51fa\u529b\u306b\u30db\u30b9\u30c8\u540d\u3068\u79d8\u5bc6\u9375\u304c\u51fa\u529b\u3055\u308c\u307e\u3059\uff0e<\/p>\n<\/div>\n<div class=\"listingblock shell\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>$ time .\/eschalot -t`nproc` -v -p abc\nVerbose, single result, no digits, 4 threads, prefixes 3-3 characters long.\nThread #1 started.\nThread #2 started.\nThread #3 started.\nThread #4 started.\nRunning, collecting performance data...\nFound a key for abc (3) - abcamzmribeujuzw.onion\n----------------------------------------------------------------\nabcamzmribeujuzw.onion\n-----BEGIN RSA PRIVATE KEY-----\nMIICXQIBAAKBgQDIHD5uCynAW\/Y1Vmyef8KrKuyFMzavij5Gl6aHYoiaGWNkJOZ7\nP\/Xc1Z78YTZ7LtzpWCAWLax4PmIhQiwPhldsD\/kVWKAi0fODxaP\/Z0XoJjqIfx8f\nCmVWIQ1L9TVp9kfp8nLtXm9CnawCT98g0VE\/jvZEddBV2oaVCuq88BTsoQIEAQBz\n4QKBgBHzMeQAOOkyB3yCc51oYOh92jYLyXJuc511HR9yki7b\/CxIhjL7miA+GVmJ\nn4DD9nKubE5\/xE6KrNnm3YZ1kmar2Yl\/8fLJxBUrVoDUeGAc7i77i+tqM4d1LCr3\nX1Ead8S7WpnnTVSmRHiLjuebaF78BWiMII4+3v9d1e6PQXbRAkEA9IJknhUNSO5b\n1bzEIOmybg94r3fvBdWsc9xiwm6ONMBI2WyAVwmxDZ63Spwb\/AyKCEblwekcaw6h\nNMmhBQeUmQJBANGDs597RqBQUsFqtb5BoBkQgELIVeS4xKgZXrDI9SKfnnpTxv8Z\nypah+g335EN3\/bBgfbqy8C7zFZhjHclzFUkCQQDcoP4aDG1zPO4TFcnguwvnGv\/j\nkOBS3h0CJOVY+rLTlUaekvjD6ugVLQ0olFItL1wyyZ3IifKcDHoDWJo\/OOZZAkAQ\n82dcvUGLOUpZObyFTdyUkU\/eytiXaQZM0UdTDPnGYmrH\/CBEaoSSjgRG7MEdFf2k\nr+VVLqSnp+g6tFwp9It5AkBI4fJxCrrANt3E\/CCrFW4iZXIqP3aPXHHZK5SqtQzJ\ngBKUN8HSRxo\/dURQPOLKKX0ynVJaMhg5UO4tQ3rHiJwa\n-----END RSA PRIVATE KEY-----\n\nSegmentation fault\n\nreal    0m0.126s\nuser    0m0.399s\nsys     0m0.015s<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p><code>-r<\/code> \u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u6b63\u898f\u8868\u73fe\u304c\u5229\u7528\u3067\u304d\u307e\u3059\uff0e\u4ee5\u4e0b\u306e\u4f8b\u306f <code>abc<\/code> \u304b\u3089\u59cb\u307e\u308a <code>bca<\/code> \u3067\u7d42\u308f\u308b\u30db\u30b9\u30c8\u540d\u304b\uff0c<code>deadbeef<\/code> \u3067\u59cb\u307e\u308b\u30a2\u30c9\u30ec\u30b9\u3092\u63a2\u3057\u3066\u3044\u307e\u3059\uff0e<\/p>\n<\/div>\n<div class=\"listingblock shell\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>$ .\/eschalot -t`nproc` -v -r \"^abc.*bca^|^deadbeef\"<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p><code>-c<\/code> \u30aa\u30d7\u30b7\u30e7\u30f3\u30671\u3064\u898b\u3064\u304b\u3063\u3066\u3082\u4e2d\u65ad\u3059\u308b\u307e\u3067\u63a2\u3057\u7d9a\u3051\u307e\u3059\uff0e<br \/>\n\u30d5\u30a1\u30a4\u30eb\u306b\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u3057\u3066\u304a\u304f\u3068\u4fbf\u5229\u3067\u3059\uff0e<\/p>\n<\/div>\n<div class=\"listingblock shell\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>$ .\/eschalot -cvt`nproc` -r \"^abc.bca^|^deadbeef\" &gt;&gt; result.log<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\u63a2\u3057\u305f\u3044\u30ef\u30fc\u30c9\u304c\u591a\u3044\u5834\u5408\u306f1\u30ef\u30fc\u30c91\u884c\u306e\u8f9e\u66f8\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\u3057\u3066 <code>-f<\/code> \u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u6307\u5b9a\u3059\u308b\u3068\u4fbf\u5229\u3067\u3059\uff0e\u305f\u3060\u3057\uff0c\u8f9e\u66f8\u30d5\u30a1\u30a4\u30eb\u6307\u5b9a\u6642\u306f7\u6587\u5b57\u4ee5\u4e0b\u306e\u30ef\u30fc\u30c9\u306f\u7121\u8996\u3055\u308c\u308b\u3088\u3046\u3067\u3059\uff0e<code>-l<\/code> \u30aa\u30d7\u30b7\u30e7\u30f3\u3067 <code>7-16<\/code> \u306e\u3088\u3046\u306b\u6700\u5c0f\u6587\u5b57\u6570\u30927\u4ee5\u4e0b\u306b\u3059\u308c\u3070\u3068\u601d\u3063\u305f\u306e\u3067\u3059\u304c\uff0c\u3053\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u306f7\u4ee5\u4e0b\u3060\u3068\u30a8\u30e9\u30fc\u3067\u7d42\u4e86\u3057\u3066\u3057\u307e\u3044\u307e\u3059\uff0e<\/p>\n<\/div>\n<div class=\"listingblock shell\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>$ .\/eschalot -cvt`nproc` -f .\/wordlist.dic &gt;&gt; result.log<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>GPU\u3092\u4f7f\u3046\u30c4\u30fc\u30eb\u3082\u8907\u6570\u3042\u308a\u307e\u3059\uff0e\u4f8b\u3048\u3070 <code>Scallion<\/code> \u3053\u3063\u3061\u306e\u307b\u3046\u304c\u305a\u3063\u3068\u901f\u3044\u3067\u3057\u3087\u3046\uff0e(ASIC\u3068\u304b\u3082\u3042\u308b\u306e\u304b\u306a?)<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li><a href=\"https:\/\/github.com\/lachesis\/scallion\">lachesis\/scallion: GPU-based Onion Hash generator<\/a><\/li>\n<\/ul>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_onion_v3_\u30a2\u30c9\u30ec\u30b9\u3092_mkp224o_\u3067\u63a2\u3059\">Onion v3 \u30a2\u30c9\u30ec\u30b9\u3092 <code>mkp224o<\/code> \u3067\u63a2\u3059<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Onion v3 \u30a2\u30c9\u30ec\u30b9\u306f <code>mkp224o<\/code> \u3068\u3044\u3046\u30c4\u30fc\u30eb\u3092\u4f7f\u3063\u3066\u307f\u307e\u3057\u305f\uff0e<\/p>\n<\/div>\n<div class=\"ulist\">\n<ul>\n<li><a href=\"https:\/\/github.com\/cathugger\/mkp224o\">cathugger\/mkp224o: vanity address generator for tor onion v3 (ed25519) hidden services<\/a><\/li>\n<\/ul>\n<\/div>\n<div class=\"paragraph\">\n<p>configure option\u306b <code>--enable-amd64-51-30k<\/code> , <code>--enable-amd64-64-24k<\/code> \u3068\u3044\u3046\u3082\u306e\u304c\u3042\u308b\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\u304c\uff0c\u306a\u3057\uff0c<code>--enable-amd64-51-30k<\/code> , <code>--enable-amd64-64-24k<\/code> \u306e\u3044\u305a\u308c\u3067\u3082\u6709\u610f\u306a\u901f\u5ea6\u5dee\u306f\u898b\u3089\u308c\u307e\u305b\u3093\u3067\u3057\u305f\uff0e(Intel\u00ae Core&#x2122; i5-3320M)<\/p>\n<\/div>\n<div class=\"listingblock shell\">\n<div class=\"title\">\u5c0e\u5165<\/div>\n<div class=\"content\">\n<pre class=\"highlight\"><code>$ sudo apt install libsodium-dev autoconf\n$ git clone https:\/\/github.com\/cathugger\/mkp224o\n$ cd mkp224o\n$ .\/autogen.sh\n$ .\/configure\n$ make\n$ .\/mkp224o\nUsage: .\/mkp224o filter [filter...] [options]\n       .\/mkp224o -f filterfile [options]\nOptions:\n        -h  - print help to stdout and quit\n        -f  - specify filter file which contains filters separated by newlines\n        -D  - deduplicate filters\n        -q  - do not print diagnostic output to stderr\n        -x  - do not print onion names\n        -v  - print more diagnostic data\n        -o filename  - output onion names to specified file (append)\n        -O filename  - output onion names to specified file (overwrite)\n        -F  - include directory names in onion names output\n        -d dirname  - output directory\n        -t numthreads  - specify number of threads to utilise (default - CPU core count or 1)\n        -j numthreads  - same as -t\n        -n numkeys  - specify number of keys (default - 0 - unlimited)\n        -N numwords  - specify number of words per key (default - 1)\n        -z  - use faster key generation method; this is now default\n        -Z  - use slower key generation method\n        -B  - use batching key generation method (&gt;10x faster than -z, experimental)\n        -s  - print statistics each 10 seconds\n        -S t  - print statistics every specified ammount of seconds\n        -T  - do not reset statistics counters when printing\n        -y  - output generated keys in YAML format instead of dumping them to filesystem\n        -Y [filename [host.onion]]  - parse YAML encoded input and extract key(s) to filesystem\n        --rawyaml  - raw (unprefixed) public\/secret keys for -y\/-Y (may be useful for tor controller API)\n        -p passphrase  - use passphrase to initialize the random seed with\n        -P  - same as -p, but takes passphrase from PASSPHRASE environment variable<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\u63a2\u3057\u305f\u3044\u30ef\u30fc\u30c9\u3092\u5f15\u6570\u306b\u4e0e\u3048\u3066\u5b9f\u884c\u3059\u308b\u3060\u3051\u3067\u5229\u7528\u3067\u304d\u307e\u3059\uff0e\u7d50\u679c\u306f\u30db\u30b9\u30c8\u540d\u306e\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u4ee5\u4e0b\u306b\u30d5\u30a1\u30a4\u30eb\u3068\u3057\u3066\u51fa\u529b\u3055\u308c\u307e\u3059\uff0e<\/p>\n<\/div>\n<div class=\"listingblock shell\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>$ time .\/mkp224o abcd\nsorting filters... done.\nfilters:\n        abcd\nin total, 1 filter\nusing 4 threads\nabcdpr2quwoxranttf2ywckm7g5giysscy62kmhyqmnq2ycvooxbtryd.onion\n^Cwaiting for threads to finish... done.\n\nreal    0m8.982s\nuser    0m21.740s\nsys     0m0.167s\n$ ls -A abcdpr2quwoxranttf2ywckm7g5giysscy62kmhyqmnq2ycvooxbtryd.onion\nhostname  hs_ed25519_public_key  hs_ed25519_secret_key<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\u7d50\u679c\u3092 <code>onion<\/code> \u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u683c\u7d0d\u3059\u308b\u3088\u3046\u306b\u3057\u307e\u3057\u305f\uff0e<\/p>\n<\/div>\n<div class=\"listingblock shell\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>$ time .\/mkp224o -d .\/onion abcd<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\u30d5\u30a3\u30eb\u30bf\u306f\u8907\u6570\u66f8\u3051\u307e\u3059\uff0e<\/p>\n<\/div>\n<div class=\"listingblock shell\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>$ time .\/mkp224o -d .\/onion abcd efgh ijkl<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p><code>-S<\/code> \u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u6307\u5b9a\u3057\u305f\u79d2\u6570\u3054\u3068\u306b\u7d71\u8a08\u4e0a\u3092\u9d5c\u3092\u51fa\u529b\u3057\u307e\u3059\uff0e\u30d5\u30a3\u30eb\u30bf\u306b\u8f9e\u66f8\u30d5\u30a1\u30a4\u30eb\u3092\u4f7f\u3044\u307e\u3059\uff0e<\/p>\n<\/div>\n<div class=\"listingblock shell\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>$ .\/mkp224o -S 300 -d .\/onion -f .\/wordlist.dic<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"paragraph\">\n<p>\u4ee5\u4e0b\u306f\u624b\u5143\u306eNotePC\u3068Raspberry Pi 3 model B\u3067\u306e\u901f\u5ea6\u3067\u3059\uff0ePC\u306e\u65b9\u306f\u71b1\u3067\u30b9\u30ed\u30c3\u30c8\u30ea\u30f3\u30b0\u304c\u52b9\u3044\u3066\u3044\u308b\u306e\u3082\u3042\u308a\u307e\u3059\u304c\uff0c\u6848\u5916Raspberry Pi \u304c\u60aa\u304f\u306a\u3044\u6570\u5b57\u306b\u898b\u3048\u307e\u3059\uff0e\u81ea\u5206\u306e\u74b0\u5883\u306e\u5834\u5408\u96fb\u6c17\u4ee3\u7b49\u3092\u8003\u3048\u308b\u3068Raspberry Pi \u3092\u4e26\u5217\u3067\u52d5\u304b\u3057\u3066\u304a\u304f\u307b\u3046\u304c\u826f\u3055\u305d\u3046\u3067\u3059\uff0e<\/p>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">Intel\u00ae Core&#x2122; i5-3320M<\/div>\n<div class=\"content\">\n<pre>&gt;calc\/sec:202602.624226, succ\/sec:0.000000, rest\/sec:0.000000, elapsed:300.129147sec\n&gt;calc\/sec:177378.183948, succ\/sec:0.006667, rest\/sec:0.006667, elapsed:600.131277sec\n&gt;calc\/sec:155232.657607, succ\/sec:0.006667, rest\/sec:0.006667, elapsed:900.106274sec\n&gt;calc\/sec:111928.180486, succ\/sec:0.000000, rest\/sec:0.000000, elapsed:1200.166338sec<\/pre>\n<\/div>\n<\/div>\n<div class=\"listingblock\">\n<div class=\"title\">Raspberry Pi 3 model B(aarch64 kernel)<\/div>\n<div class=\"content\">\n<pre>&gt;calc\/sec:103867.893552, succ\/sec:0.003333, rest\/sec:0.003333, elapsed:300.130969sec\n&gt;calc\/sec:100761.039921, succ\/sec:0.003333, rest\/sec:0.003333, elapsed:600.155046sec\n&gt;calc\/sec:94511.877034, succ\/sec:0.009999, rest\/sec:0.009999, elapsed:900.194934sec\n&gt;calc\/sec:91854.274354, succ\/sec:0.003334, rest\/sec:0.003334, elapsed:1200.130938sec<\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_vanity_addresses_\u306e\u8a2d\u5b9a\">Vanity Addresses \u306e\u8a2d\u5b9a<\/h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"_onion_v2\">Onion v2<\/h3>\n<div class=\"paragraph\">\n<p>torrc \u306e <code>HiddenServiceDir<\/code> \u4ee5\u4e0b\u306e <code>hostname<\/code>, <code>hs_ed25519_public_key<\/code>, <code>hs_ed25519_secret_key<\/code> \u3092\u9000\u907f\u3057\u307e\u3059\uff0e<br \/>\n\u6b21\u306b <code>private_key<\/code> \u30d5\u30a1\u30a4\u30eb\u3092tor\u306e\u6a29\u9650\u3067\u4f5c\u6210\u3057\uff0c\u898b\u3064\u3051\u305fRSA\u9375\u3092\u4fdd\u5b58\u3057\u307e\u3059\uff0e<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\u305d\u306e\u5f8ctor\u306e\u30b5\u30fc\u30d3\u30b9\u3092\u518d\u8d77\u52d5\u3059\u308b\u3068\u53cd\u6620\u3055\u308c\u3066 <code>hostname<\/code> \u30d5\u30a1\u30a4\u30eb\u3082\u4f5c\u6210\u3055\u308c\u307e\u3059\uff0e<\/p>\n<\/div>\n<div class=\"listingblock shell\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>$ grep ^HiddenServiceDir \/etc\/tor\/torrc\nHiddenServiceDir \/var\/lib\/tor\/other_hidden_service\/\n$ sudo ls -A \/var\/lib\/tor\/other_hidden_service\/\nauthorized_clients  hostname  hs_ed25519_public_key  hs_ed25519_secret_key  private_key\n$ sudo rm \/var\/lib\/tor\/other_hidden_service\/hostname \/var\/lib\/tor\/other_hidden_service\/hs_ed25519_public_key \/var\/lib\/tor\/other_hidden_service\/hs_ed25519_secret_key\n$ sudo install -o debian-tor -g debian-tor -m 400 \/dev\/null \/var\/lib\/tor\/other_hidden_service\/private_key\n$ echo '-----BEGIN RSA PRIVATE KEY-----\n&gt; MIICXQIBAAKBgQDIHD5uCynAW\/Y1Vmyef8KrKuyFMzavij5Gl6aHYoiaGWNkJOZ7\n&gt; P\/Xc1Z78YTZ7LtzpWCAWLax4PmIhQiwPhldsD\/kVWKAi0fODxaP\/Z0XoJjqIfx8f\n&gt; CmVWIQ1L9TVp9kfp8nLtXm9CnawCT98g0VE\/jvZEddBV2oaVCuq88BTsoQIEAQBz\n&gt; 4QKBgBHzMeQAOOkyB3yCc51oYOh92jYLyXJuc511HR9yki7b\/CxIhjL7miA+GVmJ\n&gt; n4DD9nKubE5\/xE6KrNnm3YZ1kmar2Yl\/8fLJxBUrVoDUeGAc7i77i+tqM4d1LCr3\n&gt; X1Ead8S7WpnnTVSmRHiLjuebaF78BWiMII4+3v9d1e6PQXbRAkEA9IJknhUNSO5b\n&gt; 1bzEIOmybg94r3fvBdWsc9xiwm6ONMBI2WyAVwmxDZ63Spwb\/AyKCEblwekcaw6h\n&gt; NMmhBQeUmQJBANGDs597RqBQUsFqtb5BoBkQgELIVeS4xKgZXrDI9SKfnnpTxv8Z\n&gt; ypah+g335EN3\/bBgfbqy8C7zFZhjHclzFUkCQQDcoP4aDG1zPO4TFcnguwvnGv\/j\n&gt; kOBS3h0CJOVY+rLTlUaekvjD6ugVLQ0olFItL1wyyZ3IifKcDHoDWJo\/OOZZAkAQ\n&gt; 82dcvUGLOUpZObyFTdyUkU\/eytiXaQZM0UdTDPnGYmrH\/CBEaoSSjgRG7MEdFf2k\n&gt; r+VVLqSnp+g6tFwp9It5AkBI4fJxCrrANt3E\/CCrFW4iZXIqP3aPXHHZK5SqtQzJ\n&gt; gBKUN8HSRxo\/dURQPOLKKX0ynVJaMhg5UO4tQ3rHiJwa\n&gt; -----END RSA PRIVATE KEY-----' | sudo -u debian-tor tee \/var\/lib\/tor\/other_hidden_service\/private_key\n$ sudo service tor restart\n$ torsocks w3m `sudo -u debian-tor cat \/var\/lib\/tor\/other_hidden_service\/hostname`<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect2\">\n<h3 id=\"_onion_v3\">Onion v3<\/h3>\n<div class=\"paragraph\">\n<p>torrc \u306e <code>HiddenServiceDir<\/code> \u4ee5\u4e0b\u306e <code>hostname<\/code>, <code>hs_ed25519_public_key<\/code>, <code>hs_ed25519_secret_key<\/code> \u3092\u9000\u907f\u3057\u307e\u3059\uff0e<br \/>\n\u6b21\u306b <code>hs_ed25519_secret_key<\/code> \u30d5\u30a1\u30a4\u30eb\u3092tor\u306e\u6a29\u9650\u3067\u30b3\u30d4\u30fc\u3057\u307e\u3059\uff0e<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\u305d\u306e\u5f8ctor\u306e\u30b5\u30fc\u30d3\u30b9\u3092\u518d\u8d77\u52d5\u3059\u308b\u3068\u53cd\u6620\u3055\u308c\u3066 <code>hostname<\/code>, <code>hs_ed25519_public_key<\/code> \u30d5\u30a1\u30a4\u30eb\u3082\u4f5c\u6210\u3055\u308c\u307e\u3059\uff0e<\/p>\n<\/div>\n<div class=\"listingblock shell\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>$ grep ^HiddenServiceDir \/etc\/tor\/torrc\nHiddenServiceDir \/var\/lib\/tor\/other_hidden_service\/\n$ sudo ls -A \/var\/lib\/tor\/other_hidden_service\/\nauthorized_clients  hostname  hs_ed25519_public_key  hs_ed25519_secret_key  private_key\n$ sudo rm \/var\/lib\/tor\/other_hidden_service\/hostname \/var\/lib\/tor\/other_hidden_service\/hs_ed25519_public_key \/var\/lib\/tor\/other_hidden_service\/hs_ed25519_secret_key\n$ sudo install -o debian-tor -g debian-tor -m 400 .\/onion\/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.onion\/hs_ed25519_secret_key \/var\/lib\/tor\/other_hidden_service\/hs_ed25519_secret_key\n$ sudo service tor restart\n$ torsocks w3m `sudo -u debian-tor cat \/var\/lib\/tor\/other_hidden_service\/hostname`<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"sect1\">\n<h2 id=\"_\u307e\u3068\u3081\">\u307e\u3068\u3081<\/h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>\u3068\u3044\u3046\u611f\u3058\u30673\u65e5\u307b\u3069\u52d5\u304b\u3057\u3066\u307f\u307e\u3057\u305f\u304c <code>matoken<\/code> \u304b\u3089\u59cb\u307e\u308b\u30db\u30b9\u30c8\u540d\u30923\u3064\u307b\u3069\u6398\u308a\u5f53\u3066\u307e\u3057\u305f\uff0e\u8fd1\u3044\u3046\u3061\u306b\u30df\u30e9\u30fc\u3092\u8a2d\u5b9a\u3057\u3066\u307f\u3088\u3046\u3068\u601d\u3044\u307e\u3059\uff0e(v2, v3\u306e\u30a2\u30c9\u30ec\u30b9\u30921\u3064\u306etor\u30b5\u30fc\u30d3\u30b9\u3067\u30db\u30b9\u30c8\u3059\u308b\u65b9\u6cd5\u3063\u3066\u3042\u308b\u306e\u304b\u306a?)<br \/>\n\u3057\u304b\u3057\u8a2d\u5b9a\u3057\u3066\u3082\u30a2\u30af\u30bb\u30b9\u306f\u307b\u307c\u7121\u3044\u3088\u3046\u306a\u6c17\u3082\u2026\u2026\uff0e<\/p>\n<\/div>\n<div class=\"paragraph\">\n<p>\u3061\u306a\u307f\u306btor\u306fNAT\u8d8a\u3048\u3082\u3057\u3066\u3057\u307e\u3046\u306e\u3067sshd\u306a\u3069\u3092\u8a31\u53ef\u3059\u308b\u5834\u5408\u306f\u6ce8\u610f\u3057\u307e\u3057\u3087\u3046\uff0e<\/p>\n<\/div>\n<div class=\"listingblock shell\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>$ torsocks w3m -dump http:\/\/matoken3inrzd4ks.onion\/\n _     _   _             ____               _        _              _____\n| |__ | |_| |_ _ __ _   \/ \/ \/ __ ___   __ _| |_ ___ | | _____ _ __ |___ \/\n| '_ \\| __| __| '_ (_) \/ \/ \/ '_ ` _ \\ \/ _` | __\/ _ \\| |\/ \/ _ \\ '_ \\  |_ \\\n| | | | |_| |_| |_) | \/ \/ \/| | | | | | (_| | || (_) |   &lt;  __\/ | | |___) |\n|_| |_|\\__|\\__| .__(_)_\/_\/ |_| |_| |_|\\__,_|\\__\\___\/|_|\\_\\___|_| |_|____\/\n              |_|\n _                   _ _  _   _                     _                __\n(_)_ __  _ __ ______| | || | | | _____   ___  _ __ (_) ___  _ __    \/ \/\n| | '_ \\| '__|_  \/ _` | || |_| |\/ \/ __| \/ _ \\| '_ \\| |\/ _ \\| '_ \\  \/ \/\n| | | | | |   \/ \/ (_| |__   _|   &lt;\\__ \\| (_) | | | | | (_) | | | |\/ \/\n|_|_| |_|_|  \/___\\__,_|  |_| |_|\\_\\___(_)___\/|_| |_|_|\\___\/|_| |_\/_\/<\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"listingblock shell\">\n<div class=\"title\">\u74b0\u5883<\/div>\n<div class=\"content\">\n<pre class=\"highlight\"><code>$ dpkg-query -W tor\ntor     0.3.5.10-1\n$ lsb_release -dr\nDescription:    Debian GNU\/Linux 10 (buster)\nRelease:        10\n$ uname -m\naarch64\n$ cat \/proc\/device-tree\/model ;echo\nRaspberry Pi 3 Model B Rev 1.2<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p><iframe style=\"width:120px;height:240px;\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" src=\"https:\/\/rcm-fe.amazon-adsystem.com\/e\/cm?ref=qf_sp_asin_til&amp;t=matokensmeme-22&amp;m=amazon&amp;o=9&amp;p=8&amp;l=as1&amp;IS2=1&amp;detail=1&amp;asins=B01IGUA014&amp;linkId=2caa2d9a11bad92d5391e88c1fd6bc52&amp;bc1=000000&amp;lt1=_top&amp;fc1=333333&amp;lc1=0066c0&amp;bg1=ffffff&amp;f=ifr\"><\/iframe><iframe style=\"width:120px;height:240px;\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" src=\"https:\/\/rcm-fe.amazon-adsystem.com\/e\/cm?ref=tf_til&amp;t=matokensmeme-22&amp;m=amazon&amp;o=9&amp;p=8&amp;l=as1&amp;IS2=1&amp;detail=1&amp;asins=4908348006&amp;linkId=d9924dc907c9514c9aefe6f49b8a1ece&amp;bc1=000000&amp;lt1=_top&amp;fc1=333333&amp;lc1=0066c0&amp;bg1=ffffff&amp;f=ifr\"><\/iframe><iframe style=\"width:120px;height:240px;\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" src=\"https:\/\/rcm-fe.amazon-adsystem.com\/e\/cm?ref=tf_til&amp;t=matokensmeme-22&amp;m=amazon&amp;o=9&amp;p=8&amp;l=as1&amp;IS2=1&amp;detail=1&amp;asins=B0146KAY1O&amp;linkId=ec4825c4a0db06afe02e31f6d8e7f3a4&amp;bc1=000000&amp;lt1=_top&amp;fc1=333333&amp;lc1=0066c0&amp;bg1=ffffff&amp;f=ifr\"><\/iframe><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u6700\u8fd1\u3053\u306e\u3088\u3046\u306a\u8a18\u4e8b\u3092\u8aad\u307f\u307e\u3057\u305f\uff0e Google\u306b\u30c9\u30e1\u30a4\u30f3\u3092\u30d6\u30ed\u30c3\u30af\u3055\u308c\u305f\u30a6\u30a7\u30d6\u30b5\u30fc\u30d3\u30b9\u304c\u300cCloudflare\u306b\u4e57\u308a\u63db\u3048\u308b\u300d\u3068\u6068\u307f\u7bc0 &#8211; GIGAZINE \u4eca\u306e\u30a4\u30f3\u30bf\u30fc\u30cd\u30c3\u30c8\u306f\u30c9\u30e1\u30a4\u30f3\u983c\u308a\u306a\u5272\u306b\u5358\u4e00\u969c\u5bb3\u70b9\u3068\u306a [&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":"","activitypub_content_visibility":"","activitypub_max_image_attachments":4,"activitypub_interaction_policy_quote":"anyone","activitypub_status":"","footnotes":""},"categories":[547,6,546],"tags":[549,548],"class_list":["post-2810","post","type-post","status-publish","format-standard","hentry","category-buster-raspberry-pi-os","category-linux","category-raspberry-pi-os","tag-hiddenservice","tag-tor"],"_links":{"self":[{"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/posts\/2810","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=2810"}],"version-history":[{"count":0,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/posts\/2810\/revisions"}],"wp:attachment":[{"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/media?parent=2810"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/categories?post=2810"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/matoken.org\/blog\/wp-json\/wp\/v2\/tags?post=2810"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}