{ "version": "https://jsonfeed.org/version/1.1", "user_comment": "This feed allows you to read the posts from this site in any feed reader that supports the JSON Feed format. To add this feed to your reader, copy the following URL -- https://matoken.org/blog/tag/tor/feed/json/ -- and add it your reader.", "home_page_url": "https://matoken.org/blog/tag/tor/", "feed_url": "https://matoken.org/blog/tag/tor/feed/json/", "language": "ja", "title": "tor – matoken's blog", "description": "Is there no plan B?", "icon": "https://matoken.org/blog/wp-content/uploads/2025/03/cropped-1865f695c4eecc844385acef2f078255036adccd42c254580ea3844543ab56d9.jpeg", "items": [ { "id": "https://matoken.org/blog/?p=4568", "url": "https://matoken.org/blog/2025/05/20/oniux-tor-separation-tool-using-linux-namespace/", "title": "Linux Namespace\u3092\u4f7f\u3063\u305fTor\u5206\u96e2\u30c4\u30fc\u30eb\u306eoniux", "content_html": "

\n
\n

Tor\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u304b\u3089Linux Namespace\u3067\u4efb\u610f\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092Tor\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306b\u5206\u96e2\u3059\u308boniux\u3068\u3044\u3046\u30c4\u30fc\u30eb\u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u307e\u3057\u305f\uff0e
\n\u52d5\u4f5c\u3068\u3057\u3066\u306f\u4ee5\u524d\u304b\u3089\u3042\u308btorsocks\u3084torify\u306e\u3088\u3046\u306a\u3082\u306e\u306e\u3088\u3046\u3067\u3059\uff0e
\n\u5c11\u3057\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n
\n\n
\n

\n
\n

oniux\u306fRust\u88fd\u3067\u3059\uff0e\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u3057\u3066\u30ea\u30dd\u30b8\u30c8\u30ea\u304b\u3089\u5c0e\u5165\u3067\u304d\u307e\u3059\uff0e

\n
\n
\n
\n
$ cargo install --git https://gitlab.torproject.org/tpo/core/oniux oniux@0.4.0
\n
\n
\n
\n

option\u306f\u306a\u3055\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n
\n
$ oniux --help\nUsage: oniux <CMD>...\n\nArguments:\n  <CMD>...  The actual program to execute\n\nOptions:\n  -h, --help  Print help
\n
\n
\n
\n

\u65e9\u901f\u8a66\u3057\u3066\u307f\u307e\u3059\uff0eTor\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u4f7f\u3063\u3066\u3044\u308b\u304b\u306e\u30c1\u30a7\u30c3\u30af\u30b5\u30a4\u30c8\u306b\u30a2\u30af\u30bb\u30b9\u3057\u307e\u3059\uff0e
\n\u30c6\u30ad\u30b9\u30c8\u30d6\u30e9\u30a6\u30b6\u306ew3m\u3067\u76f4\u306b\u30a2\u30af\u30bb\u30b9\u3059\u308b\u3068 Sorry. You are not using Tor.
\noniux\u7d4c\u7531\u3060\u3068 Congratulations. This browser is configured to use Tor. \u3068\u306a\u308a\u307e\u3059\uff0e\u826f\u3055\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n
\n
$ w3m -dump https://check.torproject.org/ | grep -e 'Sorry.' -e 'Congratulations.'\nSorry. You are not using Tor.\n$ oniux w3m -dump https://check.torproject.org/ | grep -e 'Sorry.' -e 'Congratulations.'\nCongratulations. This browser is configured to use Tor.
\n
\n
\n
\n

\u305d\u306e\u4ed6\u306b\u3082shell\u3092\u8d77\u52d5\u3057\u3066Tor\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u7528shell\u306a\u3093\u3066\u3053\u3068\u3082\uff0e

\n
\n
\n
\n
$ oniux bash\n$ w3m -dump https://check.torproject.org/ | grep -e 'Sorry.' -e 'Congratulations.'\nCongratulations. This browser is configured to use Tor.
\n
\n
\n
\n

Firefox\u3067\u3082\u8a66\u3057\u3066\u307f\u307e\u3059\uff0e

\n
\n
\n
\n
$ oniux firefox -P temp --profile `mktemp -d`
\n
\n
\n
\n

Tor\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u4f7f\u3048\u3066\u3044\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n

\"oniux

\n
\n
\n

BBC\u306a\u3093\u304b\u3082\u5229\u7528\u3067\u304d\u307e\u3059\uff0e

\n
\n
\n

\"oniux

\n
\n
\n

\u304c\uff0c\u65e5\u672c\u306eNHK\u306a\u3093\u304b\u306f\u62d2\u5426\u3055\u308c\u307e\u3059\uff0e\u3053\u308c\u306fTorBrowser\u306a\u3069\u3067\u3082\u540c\u3058\u3067\u65e5\u672c\u306e\u30e1\u30c7\u30a3\u30a2\u7cfb\u30b5\u30a4\u30c8\u306f\u5927\u62b5\u62d2\u5426\u3055\u308c\u3061\u3083\u3046\u3093\u3067\u3059\u3088\u306d\u2026\u2026\uff0e

\n
\n
\n

\"oniux

\n
\n
\n

\u5bfe\u3057\u3066BBC\u306a\u3069\u306fonion\u30a2\u30c9\u30ec\u30b9\u3067\u3082\u63d0\u4f9b\u3055\u308c\u3066\u3044\u307e\u3059\uff0e

\n
\n
\n

https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/

\n
\n
\n

\u3067\u3082oniux\u7d4c\u7531\u306eFirefox\u3060\u3068\u540d\u524d\u304c\u5f15\u3051\u306a\u3044\u3088\u3046\u3067\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u305b\u3093\uff0e\u4ed6\u306eonion site\u3082\u30c0\u30e1\u305d\u3046\u3067\u3059\uff0e

\n
\n
\n

\"oniux

\n
\n
\n
\n
$ oniux w3m https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/\nw3m: Can't load https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/.\n$ oniux w3m https://www.facebookwkhpilnemxj7asaniu7vnjjbiltxjqhye3mhbshg7kx5tfyd.onion/\nw3m: Can't load https://www.facebookwkhpilnemxj7asaniu7vnjjbiltxjqhye3mhbshg7kx5tfyd.onion/.\n$ oniux curl -v https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/\n* Not resolving .onion address (RFC 7686)\n* Could not resolve host: www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion\n* closing connection #0\ncurl: (6) Not resolving .onion address (RFC 7686)\n$ oniux wget https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/\n--2025-05-20 18:57:14--  https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/\nResolving www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion (www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion)... failed: Name or service not known.\nwget: unable to resolve host address \u2018www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion\u2019\n$ oniux ssh pi3bddj6lflqdtsfhdlja2zma3m7kqc4rhwpytoa37pbjc63suocj6qd.onion -F /dev/null\nssh: Could not resolve hostname pi3bddj6lflqdtsfhdlja2zma3m7kqc4rhwpytoa37pbjc63suocj6qd.onion: Name or service not known
\n
\n
\n
\n

\u4eca\u306e\u3068\u3053\u308donion address\u306f\u4f7f\u3048\u306a\u3055\u305d\u3046\u306a\u611f\u3058\u3067\u3059\uff0e

\n
\n
\n\n
\n
\n

oniux\u306f\u307e\u3060\u5b9f\u9a13\u7684\u306a\u30c4\u30fc\u30eb\u306a\u306e\u3067\u3044\u3064\u3082\u306f\u5f93\u6765\u306etorsocks\u306a\u3069\u3092\u5229\u7528\u3057\u3064\u3064\u898b\u5b88\u3063\u3066\u3044\u3053\u3046\u3068\u601d\u3044\u307e\u3059\uff0e

\n
\n
\n
\n
$ torsocks w3m -dump https://check.torproject.org/ | grep -e 'Sorry.' -e 'Congratulations.'\nCongratulations. This browser is configured to use Tor.\n$ torsocks w3m -dump https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/ | head\nBBC Homepage\n\n  \u2022 Skip to content\n  \u2022 Accessibility Help\n\n  \u2022\n    Your account\n\n  \u2022 Home\n  \u2022 News
\n
\n
\n
\n
\u74b0\u5883
\n
\n
$ grep ^version ~/.cargo/git/checkouts/oniux-a37b67fa6132af61/ff31287/Cargo.toml\nversion = \"0.4.0\"\n$ dpkg-query -W cargo torsocks tor w3m firefox openssh-client\ncargo\nfirefox 138.0.4-1\nopenssh-client  1:10.0p1-5\ntor     0.4.8.16-1\ntorsocks        2.5.0-1\nw3m     0.5.3+git20230121-2.1\n$ lsb_release -dr\nDescription:    Debian GNU/Linux 13 (trixie)\nRelease:        13\n$ arch\nx86_64
\n
\n
\n", "content_text": "Tor\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u304b\u3089Linux Namespace\u3067\u4efb\u610f\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092Tor\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u306b\u5206\u96e2\u3059\u308boniux\u3068\u3044\u3046\u30c4\u30fc\u30eb\u304c\u30ea\u30ea\u30fc\u30b9\u3055\u308c\u307e\u3057\u305f\uff0e\n\u52d5\u4f5c\u3068\u3057\u3066\u306f\u4ee5\u524d\u304b\u3089\u3042\u308btorsocks\u3084torify\u306e\u3088\u3046\u306a\u3082\u306e\u306e\u3088\u3046\u3067\u3059\uff0e\n\u5c11\u3057\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\n\nIntroducing oniux: Kernel-level Tor isolation for any Linux app | The Tor Project\n\n\nThe Tor Project / Core / oniux \u00b7 GitLab\n\n\n\n\n\noniux\u306fRust\u88fd\u3067\u3059\uff0e\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u3057\u3066\u30ea\u30dd\u30b8\u30c8\u30ea\u304b\u3089\u5c0e\u5165\u3067\u304d\u307e\u3059\uff0e\n\n\n\n$ cargo install --git https://gitlab.torproject.org/tpo/core/oniux oniux@0.4.0\n\n\n\noption\u306f\u306a\u3055\u305d\u3046\u3067\u3059\uff0e\n\n\n\n$ oniux --help\nUsage: oniux <CMD>...\n\nArguments:\n <CMD>... The actual program to execute\n\nOptions:\n -h, --help Print help\n\n\n\n\u65e9\u901f\u8a66\u3057\u3066\u307f\u307e\u3059\uff0eTor\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u4f7f\u3063\u3066\u3044\u308b\u304b\u306e\u30c1\u30a7\u30c3\u30af\u30b5\u30a4\u30c8\u306b\u30a2\u30af\u30bb\u30b9\u3057\u307e\u3059\uff0e\n\u30c6\u30ad\u30b9\u30c8\u30d6\u30e9\u30a6\u30b6\u306ew3m\u3067\u76f4\u306b\u30a2\u30af\u30bb\u30b9\u3059\u308b\u3068 Sorry. You are not using Tor.\noniux\u7d4c\u7531\u3060\u3068 Congratulations. This browser is configured to use Tor. \u3068\u306a\u308a\u307e\u3059\uff0e\u826f\u3055\u305d\u3046\u3067\u3059\uff0e\n\n\n\n$ w3m -dump https://check.torproject.org/ | grep -e 'Sorry.' -e 'Congratulations.'\nSorry. You are not using Tor.\n$ oniux w3m -dump https://check.torproject.org/ | grep -e 'Sorry.' -e 'Congratulations.'\nCongratulations. This browser is configured to use Tor.\n\n\n\n\u305d\u306e\u4ed6\u306b\u3082shell\u3092\u8d77\u52d5\u3057\u3066Tor\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u7528shell\u306a\u3093\u3066\u3053\u3068\u3082\uff0e\n\n\n\n$ oniux bash\n$ w3m -dump https://check.torproject.org/ | grep -e 'Sorry.' -e 'Congratulations.'\nCongratulations. This browser is configured to use Tor.\n\n\n\nFirefox\u3067\u3082\u8a66\u3057\u3066\u307f\u307e\u3059\uff0e\n\n\n\n$ oniux firefox -P temp --profile `mktemp -d`\n\n\n\nTor\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u3092\u4f7f\u3048\u3066\u3044\u305d\u3046\u3067\u3059\uff0e\n\n\n\n\n\nBBC\u306a\u3093\u304b\u3082\u5229\u7528\u3067\u304d\u307e\u3059\uff0e\n\n\n\n\n\n\u304c\uff0c\u65e5\u672c\u306eNHK\u306a\u3093\u304b\u306f\u62d2\u5426\u3055\u308c\u307e\u3059\uff0e\u3053\u308c\u306fTorBrowser\u306a\u3069\u3067\u3082\u540c\u3058\u3067\u65e5\u672c\u306e\u30e1\u30c7\u30a3\u30a2\u7cfb\u30b5\u30a4\u30c8\u306f\u5927\u62b5\u62d2\u5426\u3055\u308c\u3061\u3083\u3046\u3093\u3067\u3059\u3088\u306d\u2026\u2026\uff0e\n\n\n\n\n\n\u5bfe\u3057\u3066BBC\u306a\u3069\u306fonion\u30a2\u30c9\u30ec\u30b9\u3067\u3082\u63d0\u4f9b\u3055\u308c\u3066\u3044\u307e\u3059\uff0e\n\n\nhttps://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/\n\n\n\u3067\u3082oniux\u7d4c\u7531\u306eFirefox\u3060\u3068\u540d\u524d\u304c\u5f15\u3051\u306a\u3044\u3088\u3046\u3067\u30a2\u30af\u30bb\u30b9\u3067\u304d\u307e\u305b\u3093\uff0e\u4ed6\u306eonion site\u3082\u30c0\u30e1\u305d\u3046\u3067\u3059\uff0e\n\n\n\n\n\n\n$ oniux w3m https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/\nw3m: Can't load https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/.\n$ oniux w3m https://www.facebookwkhpilnemxj7asaniu7vnjjbiltxjqhye3mhbshg7kx5tfyd.onion/\nw3m: Can't load https://www.facebookwkhpilnemxj7asaniu7vnjjbiltxjqhye3mhbshg7kx5tfyd.onion/.\n$ oniux curl -v https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/\n* Not resolving .onion address (RFC 7686)\n* Could not resolve host: www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion\n* closing connection #0\ncurl: (6) Not resolving .onion address (RFC 7686)\n$ oniux wget https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/\n--2025-05-20 18:57:14-- https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/\nResolving www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion (www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion)... failed: Name or service not known.\nwget: unable to resolve host address \u2018www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion\u2019\n$ oniux ssh pi3bddj6lflqdtsfhdlja2zma3m7kqc4rhwpytoa37pbjc63suocj6qd.onion -F /dev/null\nssh: Could not resolve hostname pi3bddj6lflqdtsfhdlja2zma3m7kqc4rhwpytoa37pbjc63suocj6qd.onion: Name or service not known\n\n\n\n\u4eca\u306e\u3068\u3053\u308donion address\u306f\u4f7f\u3048\u306a\u3055\u305d\u3046\u306a\u611f\u3058\u3067\u3059\uff0e\n\n\n\n\nFormalize toggle override for non-Tor applications that follow RFC 7686 (#202) \u00b7 Issue \u00b7 tpo/core/torspec\n\n\n\nFormalize toggle override for non-Tor applications that follow RFC 7686 (#202) \u00b7 Issue \u00b7 tpo/core/torspec\n\n\n\n\n\n\n\noniux\u306f\u307e\u3060\u5b9f\u9a13\u7684\u306a\u30c4\u30fc\u30eb\u306a\u306e\u3067\u3044\u3064\u3082\u306f\u5f93\u6765\u306etorsocks\u306a\u3069\u3092\u5229\u7528\u3057\u3064\u3064\u898b\u5b88\u3063\u3066\u3044\u3053\u3046\u3068\u601d\u3044\u307e\u3059\uff0e\n\n\n\n$ torsocks w3m -dump https://check.torproject.org/ | grep -e 'Sorry.' -e 'Congratulations.'\nCongratulations. This browser is configured to use Tor.\n$ torsocks w3m -dump https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/ | head\nBBC Homepage\n\n \u2022 Skip to content\n \u2022 Accessibility Help\n\n \u2022\n Your account\n\n \u2022 Home\n \u2022 News\n\n\n\n\u74b0\u5883\n\n$ grep ^version ~/.cargo/git/checkouts/oniux-a37b67fa6132af61/ff31287/Cargo.toml\nversion = \"0.4.0\"\n$ dpkg-query -W cargo torsocks tor w3m firefox openssh-client\ncargo\nfirefox 138.0.4-1\nopenssh-client 1:10.0p1-5\ntor 0.4.8.16-1\ntorsocks 2.5.0-1\nw3m 0.5.3+git20230121-2.1\n$ lsb_release -dr\nDescription: Debian GNU/Linux 13 (trixie)\nRelease: 13\n$ arch\nx86_64", "date_published": "2025-05-20T19:38:37+09:00", "date_modified": "2025-05-20T19:38:38+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "onion site", "oniux", "tor", "Debian", "Linux", "sid" ] }, { "id": "https://matoken.org/blog/?p=4233", "url": "https://matoken.org/blog/2024/11/14/ddgr-that-allows-you-to-search-duckduckgo-on-the-terminal-like-googler-of-google-search/", "title": "Google\u691c\u7d22\u306egoogler\u306e\u3088\u3046\u306b\u30bf\u30fc\u30df\u30ca\u30eb\u4e0a\u3067DuckDuckGo\u691c\u7d22\u304c\u51fa\u6765\u308bddgr", "content_html": "
\n
\n

\n
\n

Googler\u3068\u3044\u3046\u30bf\u30fc\u30df\u30ca\u30eb\u3067Google\u691c\u7d22\u306e\u51fa\u6765\u308bgooglerJ\u3068\u3044\u3046\u30b3\u30de\u30f3\u30c9\u304c\u3042\u308a\u307e\u3059\uff0e\u4fbf\u5229\u306a\u306e\u3067\u3059\u304c\uff0c\u81ea\u5206\u306fDuckDuckGo\u3092\u30e1\u30a4\u30f3\u306b\u5229\u7528\u3057\u3066\u3044\u307e\u3059\uff0eDuckDuckGo\u3092\u7aef\u672b\u3067\u5229\u7528\u3059\u308b\u5834\u5408\uff0c\u3053\u3093\u306a\u611f\u3058\u3067\u691c\u7d22\u3057\u3066\u3044\u307e\u3057\u305f\uff0e w3m https://html.duckduckgo.com/html?q=\u30af\u30a8\u30ea\u30fc
\n\u30bf\u30fc\u30df\u30ca\u30eb\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u7d39\u4ecb\u30b5\u30a4\u30c8\u306eTerminalTrive\u3067\u4eca\u9031\u306e\u304a\u3059\u3059\u3081\u306bDuckDuckGo\u7248googler\u7684\u306addgr\u304c\u7d39\u4ecb\u3055\u308c\u3066\u3044\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n

\n
Post by @terminaltrove
\n
View on Mastodon
\n

\n


\n
\n

\n\n
\n
\n
\n

\u5c0e\u5165

\n
\n
\n

ddgr\u306fPython\u88fd\u3067Python 3.8\u4ee5\u964d\u304c\u5fc5\u8981\u3067\u3059\uff0e
\n\u5404\u7a2e\u30d1\u30c3\u30b1\u30fc\u30b8\u30de\u30cd\u30fc\u30b8\u30e3\u3067\u3082\u914d\u5e03\u3055\u308c\u3066\u3044\u307e\u3059\uff0esnap\u3084PyPI\u304c\u6c4e\u7528\u7684\u3067\u3057\u3087\u3046\u304b\uff0e

\n
\n\n
\n

Debian\u3084Ubuntu\u3067\u306f\u3053\u3093\u306a\u611f\u3058\uff0e

\n
\n
\n
\n
$ rmadison ddgr\nddgr       | 1.6-1         | oldoldstable | source, all\nddgr       | 1.9-2         | oldstable    | source, all\nddgr       | 2.1-1         | stable       | source, all\nddgr       | 2.2-1         | testing      | source, all\nddgr       | 2.2-1         | unstable     | source, all\n$ rmadison ddgr -u ubuntu\n ddgr | 1.2-1                     | bionic/universe   | source, all\n ddgr | 1.7+git20190928.bccdc92-2 | focal/universe    | source, all\n ddgr | 1.9-2                     | jammy/universe    | source, all\n ddgr | 2.2-1                     | noble/universe    | source, all\n ddgr | 2.2-1                     | oracular/universe | source, all\n ddgr | 2.2-1                     | plucky/universe   | source, all
\n
\n
\n
\n

\u4eca\u56de\u6700\u65b0\u306e2.2\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u3042\u308bDebian sid\u74b0\u5883\u306b\u30c7\u30a3\u30b9\u30c8\u30ea\u30d3\u30e5\u30fc\u30b7\u30e7\u30f3\u30d1\u30c3\u30b1\u30fc\u30b8\u304b\u3089\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
$ apt show ddgr
\n
\n
\n

Package: ddgr
\nVersion: 2.2-1
\nPriority: optional
\nSection: misc
\nMaintainer: SZ Lin (\u6797\u4e0a\u667a) <szlin@debian.org>
\nInstalled-Size: 132 kB
\nDepends: python3:any, python3 (>= 3.5)
\nHomepage: https://github.com/jarun/ddgr
\nDownload-Size: 37.3 kB
\nAPT-Manual-Installed: yes
\nAPT-Sources: http://ftp.jp.debian.org/debian sid/main amd64 Packages
\nDescription: DuckDuckGo from the terminal
\n Features
\n .
\n – Fast and clean (no ads, stray URLs or clutter), custom color
\n – Navigate result pages from omniprompt, open URLs in browser
\n – Search and option completion scripts for Bash, Zsh and Fish
\n – DuckDuckGo Bang support (along with completion)
\n – Open the first result directly in browser (as in I’m Feeling Ducky)
\n – Non-stop searches: fire new searches at omniprompt without exiting
\n – Keywords (e.g. filetype:mime, site:somesite.com) support
\n – Specify region, disable safe search
\n – HTTPS proxy support, Do Not Track set, optionally disable User Agent
\n – Support custom url handler script or cmdline utility
\n – Comprehensive documentation, man page with handy usage examples
\n – Minimal dependencies

\n
\n
\n
$ sudo apt install ddgr\n$ ddgr -h\nusage: ddgr [-h] [-n N] [-r REG] [--colorize [{auto,always,never}]] [-C] [--colors COLORS] [-j] [-t SPAN] [-w SITE] [-x] [-p URI]\n            [--unsafe] [--noua] [--json] [--gb] [--np] [--rev] [--url-handler UTIL] [--show-browser-logs] [-v] [-d]\n            [KEYWORD ...]\n\nDuckDuckGo from the terminal.\n\npositional arguments:\n  KEYWORD               search keywords\n\noptions:\n  -h, --help            show this help message and exit\n  -n N, --num N         show N (0<=N<=25) results per page (default 10); N=0 shows actual number of results fetched per page\n  -r REG, --reg REG     region-specific search e.g. 'us-en' for US (default); visit https://duckduckgo.com/params\n  --colorize [{auto,always,never}]\n                        whether to colorize output; defaults to 'auto', which enables color when stdout is a tty device; using\n                        --colorize without an argument is equivalent to --colorize=always\n  -C, --nocolor         equivalent to --colorize=never\n  --colors COLORS       set output colors (see man page for details)\n  -j, --ducky           open the first result in a web browser; implies --np\n  -t SPAN, --time SPAN  time limit search [d (1 day), w (1 wk), m (1 month), y (1 year)]\n  -w SITE, --site SITE  search sites using DuckDuckGo\n  -x, --expand          Show complete url in search results\n  -p URI, --proxy URI   tunnel traffic through an HTTPS proxy; URI format: [http[s]://][user:pwd@]host[:port]\n  --unsafe              disable safe search\n  --noua                disable user agent\n  --json                output in JSON format; implies --np\n  --gb, --gui-browser   open a bang directly in gui browser\n  --np, --noprompt      perform search and exit, do not prompt\n  --rev, --reverse      list entries in reversed order\n  --url-handler UTIL    custom script or cli utility to open results\n  --show-browser-logs   do not suppress browser output (stdout and stderr)\n  -v, --version         show program's version number and exit\n  -d, --debug           enable debugging\n\nomniprompt keys:\n  n, p, f               fetch the next, prev or first set of search results\n  index                 open the result corresponding to index in browser\n  o [index|range|a ...] open space-separated result indices, ranges or all\n  O [index|range|a ...] like key 'o', but try to open in a GUI browser\n  d keywords            new DDG search for 'keywords' with original options\n                        should be used to search omniprompt keys and indices\n  x                     toggle url expansion\n  c index               copy url to clipboard\n  q, ^D, double Enter   exit ddgr\n  ?                     show omniprompt help\n  *                     other inputs are considered as new search keywords\n\nVersion 2.2\nCopyright \u00a9 2016-2024 Arun Prakash Jana <engineerarun@gmail.com>\nLicense: GPLv3\nWebpage: https://github.com/jarun/ddgr
\n
\n
\n
\n
\n
\n

\u5229\u7528\u4f8b

\n
\n
\n
\u666e\u901a\u306b\u691c\u7d22
\n
\n
$ ddgr \u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9\n\n 1.  \u30e9\u30c3\u30b3\u30ad\u30fc\u30ef\u30fc\u30c9\uff5c\u7121\u6599\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u5206\u6790\u30c4\u30fc\u30eb\uff08\u30b5\u30b8\u30a7\u30b9\u30c8\u30fb\u5171\u8d77\u8a9e\u30fb\u6708\u9593\u691c\u7d22\u6570\u306a\u3069\uff09 [rakkokeyword.com]\n     \u30e9\u30c3\u30b3\u30ad\u30fc\u30ef\u30fc\u30c9\u306f\u3001\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u5165\u529b\u3059\u308b\u3068\u30b5\u30b8\u30a7\u30b9\u30c8\u3001\u5171\u8d77\u8a9e\u3001\u6708\u9593\u691c\u7d22\u6570\u306a\u3069\u306e\u60c5\u5831\u3092\u63d0\u4f9b\u3059\u308b\u30ad\u30fc\u30ef\u30fc\u30c9\u30ea\u30b5\u30fc\u30c1\u30c4\u30fc\u30eb\u3067\u3059\u3002\u500b\u4eba\u5229\u7528\u3084\u6709\u6599\u30d7\u30e9\u30f3\u3067\u5229\u7528\u3067\u304d\u308b\u6a5f\u80fd\u3084\u6599\u91d1\u30d7\u30e9\u30f3\u3001\u30de\u30cb\u30e5\n     \u30a2\u30eb\u306a\u3069\u306e\u60c5\u5831\u3082\u3042\u308a\u307e\u3059\u3002\n\n 2.  \u30102024\u5e74\u6700\u65b0\u3011SEO\u306b\u52b9\u304f!\u7121\u6599\uff06\u6709\u6599\u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb17\u9078 [mieru-ca.com]\n     \u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb\u306f\u3001Web\u30b5\u30a4\u30c8\u3078\u306e\u30a2\u30af\u30bb\u30b9\u6570\u3092\u5897\u3084\u3059\u305f\u3081\u306eSEO\u5bfe\u7b56\u306b\u304a\u3044\u3066\n     \u30e6\u30fc\u30b6\u30fc\u304c\u691c\u7d22\u30a8\u30f3\u30b8\u30f3\u3067\u5165\u529b\u3059\u308b\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u8abf\u67fb\u30fb\u5206\u6790\u3059\u308b\u305f\u3081\u306e\u30c4\u30fc\u30eb\u3067\u3059\u3002\u3053\u306e\u8a18\u4e8b\u3067\u306f\u3001\u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb\u306e\u4f7f\u3044\u65b9\u3084\u91cd\u8981\u6027\u3001\u6709\u6599\uff06\u7121\u6599\u306e\u304a\u3059\u3059\u3081\u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb\u306a\u3069\u3092\u3054\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\n 3.  \u3010\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9\u3011\u306e\u8abf\u3079\u65b9\u30fb\u9078\u5b9a\u65b9\u6cd5\u30fb\u52b9\u679c\u7684\u306a\u6d3b\u7528\u306e\u3057\u304b\u305f\u3092\u5fb9\u5e95\u89e3\u8aac [www.conoha.jp]\n     \u30d6\u30ed\u30b0\u3084\u30a2\u30d5\u30a3\u30ea\u30a8\u30a4\u30c8\u30b5\u30a4\u30c8\u306e\u53ce\u76ca\u5316\u306b\u306f\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9\u306e\u9078\u5b9a\u304c\u91cd\u8981\u3067\u3059\u3002\u3053\u306e\u8a18\u4e8b\u3067\u306f\u3001\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9\u306e\u7a2e\u985e\u3084\u9078\u5b9a\u65b9\u6cd5\u3001\u691c\u7d22\u30dc\u30ea\u30e5\u30fc\u30e0\u306e\u8abf\u3079\u65b9\u3001\u304a\u3059\u3059\u3081\u306e\u30c4\u30fc\u30eb\u306a\u3069\u3092\u5fb9\u5e95\u89e3\u8aac\u3057\u307e\u3059\u3002\n\n 4.  Google \u30c8\u30ec\u30f3\u30c9 [trends.google.co.jp]\n     Google \u30c8\u30ec\u30f3\u30c9\u306f\u3001Google\n     \u691c\u7d22\u306e\u30c7\u30fc\u30bf\u3092\u5206\u6790\u3057\u3066\u3001\u8a71\u984c\u306b\u306a\u3063\u3066\u3044\u308b\u30ad\u30fc\u30ef\u30fc\u30c9\u3084\u30a4\u30d9\u30f3\u30c8\u3092\u8868\u793a\u3059\u308b\u30b5\u30fc\u30d3\u30b9\u3067\u3059\u3002\u5730\u57df\u3084\u6642\u9593\u5e2f\u3001\u30ab\u30c6\u30b4\u30ea\u30fc\u306a\u3069\u3067\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u8abf\u3079\u305f\u308a\u3001\u30c8\u30ec\u30f3\u30c9\u30c7\u30fc\u30bf\u3092\u6d3b\u7528\u3057\u305f\u308a\u3067\u304d\u307e\u3059\u3002\n\n 5.  \u30102024\u5e74\u6700\u65b0\u7248\u3011\u304a\u3059\u3059\u3081\u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb17\u9078!\u7121\u6599\u7248\u30fb\u6709\u6599\u7248\u306e\u9055\u3044\u3082\u7d39\u4ecb [www.seohacks.net]\n     \u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb\u306f\u3001SEO\u306b\u5fc5\u8981\u306a\u691c\u7d22\u30dc\u30ea\u30e5\u30fc\u30e0\u3084\u95a2\u9023\u30ad\u30fc\u30ef\u30fc\u30c9\u306a\u3069\u3092\u5206\u6790\u3067\u304d\u308b\u30c4\u30fc\u30eb\u3067\u3059\u3002\u3053\u306e\u8a18\u4e8b\u3067\u306f\u3001\u7dcf\u5408\u7684\u306a\u30c4\u30fc\u30eb\u304b\u3089\u30b5\u30b8\u30a7\u30b9\u30c8\u30ad\u30fc\u30ef\u30fc\u30c9\u3084\u30c8\u30ec\u30f3\u30c9\u30ad\u30fc\u30ef\u30fc\u30c9\u306b\u7279\u5316\u3057\u305f\u30c4\u30fc\u30eb\u307e\u3067\u3001\n     \u7121\u6599\u7248\u3068\u6709\u6599\u7248\u306e\u9055\u3044\u3084\u4f7f\u3044\u65b9\u3092\u8a73\u3057\u304f\u89e3\u8aac\u3057\u307e\u3059\u3002\n\n 6.  2024\u5e74\u7248\uff1a\u7121\u6599\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u8abf\u67fb\u30c4\u30fc\u30eb10\u9078 - Ahrefs [ahrefs.jp]\n     SEO\u306b\u5f79\u7acb\u3064\u30ad\u30fc\u30ef\u30fc\u30c9\u8abf\u67fb\u306e\u65b9\u6cd5\u3068\u30c4\u30fc\u30eb\u3092\u7d39\u4ecb\u3059\u308b\u8a18\u4e8b\u3067\u3059\u3002Ahrefs\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u30fc\u3084Google\u30c8\u30ec\u30f3\u30c9\u306a\u3069\u3001\u7121\u6599\u3067\u4f7f\u3048\u308b\u30c4\u30fc\u30eb\u306e\u7279\u5fb4\u3068\u6d3b\u7528\u65b9\u6cd5\u3092\u89e3\u8aac\u3057\u307e\u3059\u3002\n\n 7.  \u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb16\u9078!\u30ad\u30fc\u30ef\u30fc\u30c9\u30d7\u30e9\u30f3\u30ca\u30fc\u306e\u4ee3\u308f\u308a\u306e\u9078\u5b9a\u30c4\u30fc\u30eb\u306a\u3069\u7121\u6599\u304b\u3089\u7d39\u4ecb\uff5c\u30c7\u30a3\u30fc\u30dc\u306eSEO\u30e9\u30dc [seolaboratory.jp]\n     \u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb\u3068\u306f\u3001\u30ad\u30fc\u30ef\u30fc\u30c9\u306e\u7af6\u5408\u6027\u3084\u691c\u7d22\u30dc\u30ea\u30e5\u30fc\u30e0\u3001\u95a2\u9023\u30ad\u30fc\u30ef\u30fc\u30c9\u306a\u3069\u304c\u308f\u304b\u308bSEO\u30c4\u30fc\u30eb\u3067\u3059\u3002\u3053\u306e\u8a18\u4e8b\u3067\u306f\u3001\u30ad\u30fc\u30ef\u30fc\u30c9\u30d7\u30e9\u30f3\u30ca\u30fc\u306e\u4ee3\u308f\u308a\u3068\u3057\u3066\u4eba\u6c17\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb\u309216\u500b\u53b3\u9078\u3057\u3001\n     \u6a5f\u80fd\u3084\u6599\u91d1\u306a\u3069\u3092\u4e00\u89a7\u3067\u6bd4\u8f03\u3057\u3066\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\n 8.  \u7121\u6599\u30ad\u30fc\u30ef\u30fc\u30c9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u30fc\u30c4\u30fc\u30eb\uff1a\u6570\u79d2\u3067100\u4ee5\u4e0a\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u5019\u88dc\u3092\u898b\u3064\u3051\u307e\u3057\u3087\u3046 [ahrefs.com]\n     \u4e00\u65e5\u4e2d\u3001\u30ad\u30fc\u30ef\u30fc\u30c9\u5019\u88dc\u3092\u63a2\u3057\u307e\u3057\u3087\u3046. 80\u5104\u4ee5\u4e0a\u306e\u30af\u30a8\u30ea\u304b\u3089\u306a\u308b \u5f53\u793e\u306e\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9 \u304b\u3089\u3001\u95a2\u9023\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u691c\u7d22\u3057\u307e\u3057\u3087\u3046\u3002.\n     \u6700\u592710\u500b\u306e\u5358\u8a9e\u307e\u305f\u306f\u30d5\u30ec\u30fc\u30ba\u3092\u5165\u529b\u3057\u30016\u3064\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u5019\u88dc\u30ec\u30dd\u30fc\u30c8\u306e\u4e2d\u304b\u30891\u3064\u3092\u9078\u629e\u3059\u308b\u3060\u3051\u3067\u3059\u3002. \u6570\u9031\u9593\u3001\u6570\u30f6\u6708 ...\n\n 9.  \u7121\u6599\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u8abf\u67fb\u30c4\u30fc\u30eb10\u9078\uff08Google\u30ad\u30fc\u30ef\u30fc\u30c9\u30d7\u30e9\u30f3\u30ca\u30fc\u4ee5\u5916\u306e\u3082\u306e\uff09 | Ahrefs\u30d6\u30ed\u30b0- \u4f7f\u3048\u308bSEO\u60c5\u5831\u3092\u304a\u5c4a\u3051 | SEO ... [ahrefs.jp]\n     Google\u30ad\u30fc\u30ef\u30fc\u30c9\u30d7\u30e9\u30f3\u30ca\u30fc\u4ee5\u5916\u306e\u7121\u6599\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u8abf\u67fb\u30c4\u30fc\u30eb\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002Google\u30c8\u30ec\u30f3\u30c9\u3001Ahrefs\u30ad\u30fc\u30ef\u30fc\u30c9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u30fc\u3001Keyword\n     Sheeter\u306a\u3069\u3001\u691c\u7d22\u30dc\u30ea\u30e5\u30fc\u30e0\u3084\u30b3\u30f3\u30da\u30c6\u30a3\u30b7\u30e7\u30f3\u3001\u95a2\u9023\u30ad\u30fc\u30ef\u30fc\u30c9\u306a\u3069\u306e\u60c5\u5831\u3092\u5f97\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\n\n 10. SEO\u30ad\u30fc\u30ef\u30fc\u30c9\u8abf\u67fb\u306e\u624b\u9806\u3092\u5fb9\u5e95\u89e3\u8aac - Kinsta [kinsta.com]\n     SEO\u306b\u52b9\u679c\u7684\u306a\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u898b\u3064\u3051\u308b\u305f\u3081\u306e\u624b\u9806\u3068\u3001\u304a\u3059\u3059\u3081\u306e\u5206\u6790\u30c4\u30fc\u30eb\u3092\u89e3\u8aac\u3057\u307e\u3059\u3002\u30ad\u30fc\u30ef\u30fc\u30c9\u306e\u96e3\u6613\u5ea6\u3001\u691c\u7d22\u30dc\u30ea\u30e5\u30fc\u30e0\u3001\u30e6\u30fc\u30b6\u30fc\u306e\u610f\u56f3\u306a\u3069\u3092\u628a\u63e1\u3057\u3001\u30d3\u30b8\u30cd\u30b9\u306b\u6709\u76ca\u306a\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u9078\u629e\u3059\u308b\u30b3\n     \u30c4\u3092\u5b66\u3073\u307e\u3057\u3087\u3046\u3002\n\nddgr (? for help) ?\n\nomniprompt keys:\n  n, p, f               fetch the next, prev or first set of search results\n  index                 open the result corresponding to index in browser\n  o [index|range|a ...] open space-separated result indices, ranges or all\n  O [index|range|a ...] like key 'o', but try to open in a GUI browser\n  d keywords            new DDG search for 'keywords' with original options\n                        should be used to search omniprompt keys and indices\n  x                     toggle url expansion\n  c index               copy url to clipboard\n  q, ^D, double Enter   exit ddgr\n  ?                     show omniprompt help\n  *                     other inputs are considered as new search keywords\n\nddgr (? for help) 1 (1)\nddgr (? for help) d \u732b \u5b63\u8a9e (2)\n\n 1.  \u5b63\u8a9e\u3068\u3057\u3066\u8868\u73fe\u3055\u308c\u308b\u732b\u305f\u3061 \u6625\u3084\u51ac\u306e\u5b63\u8a9e\u3084\u732b\u306e\u4ff3\u53e5\u3092\u8a60\u3093\u3060\u4ff3\u4eba\u305f\u3061\u3092\u7d39\u4ecb | \u30da\u30c8\u30b3\u30c8\uff08Petokoto\uff09 [petokoto.com]\n     \u732b\u304c\u6625\u306e\u5b63\u8a9e\u3068\u3057\u3066\u4f7f\u308f\u308c\u308b\u7406\u7531\u3084\u3001\u732b\u306b\u95a2\u3059\u308b\u6709\u540d\u306a\u4ff3\u53e5\u3084\u732b\u306e\u604b\u306b\u3064\u3044\u3066\u7d39\u4ecb\u3059\u308b\u30da\u30c8\u30b3\u30c8\u306e\u8a18\u4e8b\u3067\u3059\u3002\u732b\u306e\u5b63\u8a9e\u3084\u732b\u306e\u4ff3\u53e5\u3092\u77e5\u308a\u305f\u3044\u65b9\u306f\u305c\u3072\u3054\u89a7\u304f\u3060\u3055\u3044\u3002\n  (\u4ee5\u4e0b\u7701\u7565)\n$ ddgr -n5 \u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9 (3)\n$ ddgr -j ddgr DuckDuckGo (4)
\n
\n
\n
\n
    \n
  1. \n

    1\u4ef6\u76ee\u306e\u691c\u7d22\u7d50\u679c\u3092\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067\u958b\u304f

    \n
  2. \n
  3. \n

    \u5225\u306e\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9

    \n
  4. \n
  5. \n

    \u691c\u7d22\u7d50\u679c\u304c\u753b\u9762\u306b\u53ce\u307e\u3089\u306a\u3044\u306e\u30671\u30da\u30fc\u30b85\u4ef6\u306b

    \n
  6. \n
  7. \n

    \u691c\u7d22\u7d50\u679c\u306e\u4e00\u4ef6\u76ee\u3092\u958b\u304f

    \n
  8. \n
\n
\n
\n
\n
\n

ddgr\u306e\u691c\u7d22\u7d50\u679c\u3092\u7279\u5b9a\u306e\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067\u4f7f\u3046

\n
\n
\n

ddgr \u306f\u74b0\u5883\u5909\u6570 BROWSER \u3092\u8a8d\u8b58\u3059\u308b\u306e\u3067\u3053\u308c\u3092\u6307\u5b9a\u3059\u308b\u3053\u3068\u3067ddgr\u306e\u691c\u7d22\u7d50\u679c\u3092\u30c7\u30d5\u30a9\u30eb\u30c8\u4ee5\u5916\u306e\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067\u958b\u304f\u3053\u3068\u304c\u51fa\u6765\u307e\u3059\uff0c\u7aef\u672b\u3067\u52d5\u4f5c\u3059\u308bw3m\u3084lynx\u306a\u3069\u306e\u30c6\u30ad\u30b9\u30c8\u30d6\u30e9\u30a6\u30b6\u3067\u3042\u308c\u3070\u540c\u3058\u7aef\u672b\u306e\u4e2d\u3067\u8d77\u52d5\u3057\u3066\uff0c\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3092\u7d42\u4e86\u3059\u308b\u3068\u307e\u305fddgr\u306b\u623b\u3063\u3066\u304d\u307e\u3059\uff0e

\n
\n
\n
\n
$ BROWSER=dillo ddgr -n5 \u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9 (1)\n$ BROWSER=w3m ddgr -n5 \u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9 (2)
\n
\n
\n
\n
    \n
  1. \n

    \u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u306b\u8efd\u91cf\u306adillo\u3092\u5229\u7528

    \n
  2. \n
  3. \n

    \u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u306b\u30c6\u30ad\u30b9\u30c8\u30d6\u30e9\u30a6\u30b6\u306ew3m\u3092\u5229\u7528

    \n
  4. \n
\n
\n
\n
\n
\n

tor\u7d4c\u7531\u3067\u5229\u7528

\n
\n
\n

torify\u3084torsocks\u3092\u631f\u3093\u3067tor\u7d4c\u7531\u3067\u5229\u7528\u3057\u305f\u308a\u3082\uff0e

\n
\n
\n
\n
$ BROWSER=w3m torify ddgr -n5 site:torproject.org check\n$ BROWSER=w3m torsocks ddgr -j site:torproject.org check
\n
\n
\n
\n

\u4fbf\u5229\u306b\u4f7f\u3048\u305d\u3046\u3067\u3059 :)

\n
\n

\n
\n
\u74b0\u5883
\n
\n
$ dpkg-query -W ddgr w3m tor torsocks dillo\nddgr    2.2-1\ndillo   3.0.5-7.1\ntor     0.4.8.13-2\ntorsocks        2.4.0-2\nw3m     0.5.3+git20230121-2+b3\n$ lsb_release -dr\nDescription:    Debian GNU/Linux trixie/sid\nRelease:        n/a\n$ arch\nx86_64
\n
\n
\n
\n
\n", "content_text": "Googler\u3068\u3044\u3046\u30bf\u30fc\u30df\u30ca\u30eb\u3067Google\u691c\u7d22\u306e\u51fa\u6765\u308bgooglerJ\u3068\u3044\u3046\u30b3\u30de\u30f3\u30c9\u304c\u3042\u308a\u307e\u3059\uff0e\u4fbf\u5229\u306a\u306e\u3067\u3059\u304c\uff0c\u81ea\u5206\u306fDuckDuckGo\u3092\u30e1\u30a4\u30f3\u306b\u5229\u7528\u3057\u3066\u3044\u307e\u3059\uff0eDuckDuckGo\u3092\u7aef\u672b\u3067\u5229\u7528\u3059\u308b\u5834\u5408\uff0c\u3053\u3093\u306a\u611f\u3058\u3067\u691c\u7d22\u3057\u3066\u3044\u307e\u3057\u305f\uff0e w3m https://html.duckduckgo.com/html?q=\u30af\u30a8\u30ea\u30fc\n\u30bf\u30fc\u30df\u30ca\u30eb\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u7d39\u4ecb\u30b5\u30a4\u30c8\u306eTerminalTrive\u3067\u4eca\u9031\u306e\u304a\u3059\u3059\u3081\u306bDuckDuckGo\u7248googler\u7684\u306addgr\u304c\u7d39\u4ecb\u3055\u308c\u3066\u3044\u305f\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\uff0e\n\n \nPost by @terminaltrove\nView on Mastodon\n \n \n\n\n\n\n\nGitHub – jarun/ddgr: :duck: DuckDuckGo from the terminal\n\n\n\nddgr – DuckDuckGo from the terminal.\n\n\n\n\n\nGitHub – oksiquatzel/googler: :mag: Google from the terminal\n\n\n\n\n\n\n\u5c0e\u5165\n\n\nddgr\u306fPython\u88fd\u3067Python 3.8\u4ee5\u964d\u304c\u5fc5\u8981\u3067\u3059\uff0e\n\u5404\u7a2e\u30d1\u30c3\u30b1\u30fc\u30b8\u30de\u30cd\u30fc\u30b8\u30e3\u3067\u3082\u914d\u5e03\u3055\u308c\u3066\u3044\u307e\u3059\uff0esnap\u3084PyPI\u304c\u6c4e\u7528\u7684\u3067\u3057\u3087\u3046\u304b\uff0e\n\n\n\n\nddgr package versions – Repology\n\n\n\n\nDebian\u3084Ubuntu\u3067\u306f\u3053\u3093\u306a\u611f\u3058\uff0e\n\n\n\n$ rmadison ddgr\nddgr | 1.6-1 | oldoldstable | source, all\nddgr | 1.9-2 | oldstable | source, all\nddgr | 2.1-1 | stable | source, all\nddgr | 2.2-1 | testing | source, all\nddgr | 2.2-1 | unstable | source, all\n$ rmadison ddgr -u ubuntu\n ddgr | 1.2-1 | bionic/universe | source, all\n ddgr | 1.7+git20190928.bccdc92-2 | focal/universe | source, all\n ddgr | 1.9-2 | jammy/universe | source, all\n ddgr | 2.2-1 | noble/universe | source, all\n ddgr | 2.2-1 | oracular/universe | source, all\n ddgr | 2.2-1 | plucky/universe | source, all\n\n\n\n\u4eca\u56de\u6700\u65b0\u306e2.2\u306e\u30d1\u30c3\u30b1\u30fc\u30b8\u306e\u3042\u308bDebian sid\u74b0\u5883\u306b\u30c7\u30a3\u30b9\u30c8\u30ea\u30d3\u30e5\u30fc\u30b7\u30e7\u30f3\u30d1\u30c3\u30b1\u30fc\u30b8\u304b\u3089\u5c0e\u5165\u3057\u307e\u3057\u305f\uff0e\n\n\n\n$ apt show ddgr\n\n\nPackage: ddgr\nVersion: 2.2-1\nPriority: optional\nSection: misc\nMaintainer: SZ Lin (\u6797\u4e0a\u667a) <szlin@debian.org>\nInstalled-Size: 132 kB\nDepends: python3:any, python3 (>= 3.5)\nHomepage: https://github.com/jarun/ddgr\nDownload-Size: 37.3 kB\nAPT-Manual-Installed: yes\nAPT-Sources: http://ftp.jp.debian.org/debian sid/main amd64 Packages\nDescription: DuckDuckGo from the terminal\n Features\n .\n – Fast and clean (no ads, stray URLs or clutter), custom color\n – Navigate result pages from omniprompt, open URLs in browser\n – Search and option completion scripts for Bash, Zsh and Fish\n – DuckDuckGo Bang support (along with completion)\n – Open the first result directly in browser (as in I’m Feeling Ducky)\n – Non-stop searches: fire new searches at omniprompt without exiting\n – Keywords (e.g. filetype:mime, site:somesite.com) support\n – Specify region, disable safe search\n – HTTPS proxy support, Do Not Track set, optionally disable User Agent\n – Support custom url handler script or cmdline utility\n – Comprehensive documentation, man page with handy usage examples\n – Minimal dependencies\n\n\n$ sudo apt install ddgr\n$ ddgr -h\nusage: ddgr [-h] [-n N] [-r REG] [--colorize [{auto,always,never}]] [-C] [--colors COLORS] [-j] [-t SPAN] [-w SITE] [-x] [-p URI]\n [--unsafe] [--noua] [--json] [--gb] [--np] [--rev] [--url-handler UTIL] [--show-browser-logs] [-v] [-d]\n [KEYWORD ...]\n\nDuckDuckGo from the terminal.\n\npositional arguments:\n KEYWORD search keywords\n\noptions:\n -h, --help show this help message and exit\n -n N, --num N show N (0<=N<=25) results per page (default 10); N=0 shows actual number of results fetched per page\n -r REG, --reg REG region-specific search e.g. 'us-en' for US (default); visit https://duckduckgo.com/params\n --colorize [{auto,always,never}]\n whether to colorize output; defaults to 'auto', which enables color when stdout is a tty device; using\n --colorize without an argument is equivalent to --colorize=always\n -C, --nocolor equivalent to --colorize=never\n --colors COLORS set output colors (see man page for details)\n -j, --ducky open the first result in a web browser; implies --np\n -t SPAN, --time SPAN time limit search [d (1 day), w (1 wk), m (1 month), y (1 year)]\n -w SITE, --site SITE search sites using DuckDuckGo\n -x, --expand Show complete url in search results\n -p URI, --proxy URI tunnel traffic through an HTTPS proxy; URI format: [http[s]://][user:pwd@]host[:port]\n --unsafe disable safe search\n --noua disable user agent\n --json output in JSON format; implies --np\n --gb, --gui-browser open a bang directly in gui browser\n --np, --noprompt perform search and exit, do not prompt\n --rev, --reverse list entries in reversed order\n --url-handler UTIL custom script or cli utility to open results\n --show-browser-logs do not suppress browser output (stdout and stderr)\n -v, --version show program's version number and exit\n -d, --debug enable debugging\n\nomniprompt keys:\n n, p, f fetch the next, prev or first set of search results\n index open the result corresponding to index in browser\n o [index|range|a ...] open space-separated result indices, ranges or all\n O [index|range|a ...] like key 'o', but try to open in a GUI browser\n d keywords new DDG search for 'keywords' with original options\n should be used to search omniprompt keys and indices\n x toggle url expansion\n c index copy url to clipboard\n q, ^D, double Enter exit ddgr\n ? show omniprompt help\n * other inputs are considered as new search keywords\n\nVersion 2.2\nCopyright \u00a9 2016-2024 Arun Prakash Jana <engineerarun@gmail.com>\nLicense: GPLv3\nWebpage: https://github.com/jarun/ddgr\n\n\n\n\n\n\u5229\u7528\u4f8b\n\n\n\u666e\u901a\u306b\u691c\u7d22\n\n$ ddgr \u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9\n\n 1. \u30e9\u30c3\u30b3\u30ad\u30fc\u30ef\u30fc\u30c9\uff5c\u7121\u6599\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u5206\u6790\u30c4\u30fc\u30eb\uff08\u30b5\u30b8\u30a7\u30b9\u30c8\u30fb\u5171\u8d77\u8a9e\u30fb\u6708\u9593\u691c\u7d22\u6570\u306a\u3069\uff09 [rakkokeyword.com]\n \u30e9\u30c3\u30b3\u30ad\u30fc\u30ef\u30fc\u30c9\u306f\u3001\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u5165\u529b\u3059\u308b\u3068\u30b5\u30b8\u30a7\u30b9\u30c8\u3001\u5171\u8d77\u8a9e\u3001\u6708\u9593\u691c\u7d22\u6570\u306a\u3069\u306e\u60c5\u5831\u3092\u63d0\u4f9b\u3059\u308b\u30ad\u30fc\u30ef\u30fc\u30c9\u30ea\u30b5\u30fc\u30c1\u30c4\u30fc\u30eb\u3067\u3059\u3002\u500b\u4eba\u5229\u7528\u3084\u6709\u6599\u30d7\u30e9\u30f3\u3067\u5229\u7528\u3067\u304d\u308b\u6a5f\u80fd\u3084\u6599\u91d1\u30d7\u30e9\u30f3\u3001\u30de\u30cb\u30e5\n \u30a2\u30eb\u306a\u3069\u306e\u60c5\u5831\u3082\u3042\u308a\u307e\u3059\u3002\n\n 2. \u30102024\u5e74\u6700\u65b0\u3011SEO\u306b\u52b9\u304f!\u7121\u6599\uff06\u6709\u6599\u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb17\u9078 [mieru-ca.com]\n \u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb\u306f\u3001Web\u30b5\u30a4\u30c8\u3078\u306e\u30a2\u30af\u30bb\u30b9\u6570\u3092\u5897\u3084\u3059\u305f\u3081\u306eSEO\u5bfe\u7b56\u306b\u304a\u3044\u3066\n \u30e6\u30fc\u30b6\u30fc\u304c\u691c\u7d22\u30a8\u30f3\u30b8\u30f3\u3067\u5165\u529b\u3059\u308b\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u8abf\u67fb\u30fb\u5206\u6790\u3059\u308b\u305f\u3081\u306e\u30c4\u30fc\u30eb\u3067\u3059\u3002\u3053\u306e\u8a18\u4e8b\u3067\u306f\u3001\u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb\u306e\u4f7f\u3044\u65b9\u3084\u91cd\u8981\u6027\u3001\u6709\u6599\uff06\u7121\u6599\u306e\u304a\u3059\u3059\u3081\u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb\u306a\u3069\u3092\u3054\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\n 3. \u3010\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9\u3011\u306e\u8abf\u3079\u65b9\u30fb\u9078\u5b9a\u65b9\u6cd5\u30fb\u52b9\u679c\u7684\u306a\u6d3b\u7528\u306e\u3057\u304b\u305f\u3092\u5fb9\u5e95\u89e3\u8aac [www.conoha.jp]\n \u30d6\u30ed\u30b0\u3084\u30a2\u30d5\u30a3\u30ea\u30a8\u30a4\u30c8\u30b5\u30a4\u30c8\u306e\u53ce\u76ca\u5316\u306b\u306f\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9\u306e\u9078\u5b9a\u304c\u91cd\u8981\u3067\u3059\u3002\u3053\u306e\u8a18\u4e8b\u3067\u306f\u3001\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9\u306e\u7a2e\u985e\u3084\u9078\u5b9a\u65b9\u6cd5\u3001\u691c\u7d22\u30dc\u30ea\u30e5\u30fc\u30e0\u306e\u8abf\u3079\u65b9\u3001\u304a\u3059\u3059\u3081\u306e\u30c4\u30fc\u30eb\u306a\u3069\u3092\u5fb9\u5e95\u89e3\u8aac\u3057\u307e\u3059\u3002\n\n 4. Google \u30c8\u30ec\u30f3\u30c9 [trends.google.co.jp]\n Google \u30c8\u30ec\u30f3\u30c9\u306f\u3001Google\n \u691c\u7d22\u306e\u30c7\u30fc\u30bf\u3092\u5206\u6790\u3057\u3066\u3001\u8a71\u984c\u306b\u306a\u3063\u3066\u3044\u308b\u30ad\u30fc\u30ef\u30fc\u30c9\u3084\u30a4\u30d9\u30f3\u30c8\u3092\u8868\u793a\u3059\u308b\u30b5\u30fc\u30d3\u30b9\u3067\u3059\u3002\u5730\u57df\u3084\u6642\u9593\u5e2f\u3001\u30ab\u30c6\u30b4\u30ea\u30fc\u306a\u3069\u3067\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u8abf\u3079\u305f\u308a\u3001\u30c8\u30ec\u30f3\u30c9\u30c7\u30fc\u30bf\u3092\u6d3b\u7528\u3057\u305f\u308a\u3067\u304d\u307e\u3059\u3002\n\n 5. \u30102024\u5e74\u6700\u65b0\u7248\u3011\u304a\u3059\u3059\u3081\u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb17\u9078!\u7121\u6599\u7248\u30fb\u6709\u6599\u7248\u306e\u9055\u3044\u3082\u7d39\u4ecb [www.seohacks.net]\n \u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb\u306f\u3001SEO\u306b\u5fc5\u8981\u306a\u691c\u7d22\u30dc\u30ea\u30e5\u30fc\u30e0\u3084\u95a2\u9023\u30ad\u30fc\u30ef\u30fc\u30c9\u306a\u3069\u3092\u5206\u6790\u3067\u304d\u308b\u30c4\u30fc\u30eb\u3067\u3059\u3002\u3053\u306e\u8a18\u4e8b\u3067\u306f\u3001\u7dcf\u5408\u7684\u306a\u30c4\u30fc\u30eb\u304b\u3089\u30b5\u30b8\u30a7\u30b9\u30c8\u30ad\u30fc\u30ef\u30fc\u30c9\u3084\u30c8\u30ec\u30f3\u30c9\u30ad\u30fc\u30ef\u30fc\u30c9\u306b\u7279\u5316\u3057\u305f\u30c4\u30fc\u30eb\u307e\u3067\u3001\n \u7121\u6599\u7248\u3068\u6709\u6599\u7248\u306e\u9055\u3044\u3084\u4f7f\u3044\u65b9\u3092\u8a73\u3057\u304f\u89e3\u8aac\u3057\u307e\u3059\u3002\n\n 6. 2024\u5e74\u7248\uff1a\u7121\u6599\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u8abf\u67fb\u30c4\u30fc\u30eb10\u9078 - Ahrefs [ahrefs.jp]\n SEO\u306b\u5f79\u7acb\u3064\u30ad\u30fc\u30ef\u30fc\u30c9\u8abf\u67fb\u306e\u65b9\u6cd5\u3068\u30c4\u30fc\u30eb\u3092\u7d39\u4ecb\u3059\u308b\u8a18\u4e8b\u3067\u3059\u3002Ahrefs\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u30fc\u3084Google\u30c8\u30ec\u30f3\u30c9\u306a\u3069\u3001\u7121\u6599\u3067\u4f7f\u3048\u308b\u30c4\u30fc\u30eb\u306e\u7279\u5fb4\u3068\u6d3b\u7528\u65b9\u6cd5\u3092\u89e3\u8aac\u3057\u307e\u3059\u3002\n\n 7. \u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb16\u9078!\u30ad\u30fc\u30ef\u30fc\u30c9\u30d7\u30e9\u30f3\u30ca\u30fc\u306e\u4ee3\u308f\u308a\u306e\u9078\u5b9a\u30c4\u30fc\u30eb\u306a\u3069\u7121\u6599\u304b\u3089\u7d39\u4ecb\uff5c\u30c7\u30a3\u30fc\u30dc\u306eSEO\u30e9\u30dc [seolaboratory.jp]\n \u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb\u3068\u306f\u3001\u30ad\u30fc\u30ef\u30fc\u30c9\u306e\u7af6\u5408\u6027\u3084\u691c\u7d22\u30dc\u30ea\u30e5\u30fc\u30e0\u3001\u95a2\u9023\u30ad\u30fc\u30ef\u30fc\u30c9\u306a\u3069\u304c\u308f\u304b\u308bSEO\u30c4\u30fc\u30eb\u3067\u3059\u3002\u3053\u306e\u8a18\u4e8b\u3067\u306f\u3001\u30ad\u30fc\u30ef\u30fc\u30c9\u30d7\u30e9\u30f3\u30ca\u30fc\u306e\u4ee3\u308f\u308a\u3068\u3057\u3066\u4eba\u6c17\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u30c4\u30fc\u30eb\u309216\u500b\u53b3\u9078\u3057\u3001\n \u6a5f\u80fd\u3084\u6599\u91d1\u306a\u3069\u3092\u4e00\u89a7\u3067\u6bd4\u8f03\u3057\u3066\u7d39\u4ecb\u3057\u307e\u3059\u3002\n\n 8. \u7121\u6599\u30ad\u30fc\u30ef\u30fc\u30c9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u30fc\u30c4\u30fc\u30eb\uff1a\u6570\u79d2\u3067100\u4ee5\u4e0a\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u5019\u88dc\u3092\u898b\u3064\u3051\u307e\u3057\u3087\u3046 [ahrefs.com]\n \u4e00\u65e5\u4e2d\u3001\u30ad\u30fc\u30ef\u30fc\u30c9\u5019\u88dc\u3092\u63a2\u3057\u307e\u3057\u3087\u3046. 80\u5104\u4ee5\u4e0a\u306e\u30af\u30a8\u30ea\u304b\u3089\u306a\u308b \u5f53\u793e\u306e\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9 \u304b\u3089\u3001\u95a2\u9023\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u691c\u7d22\u3057\u307e\u3057\u3087\u3046\u3002.\n \u6700\u592710\u500b\u306e\u5358\u8a9e\u307e\u305f\u306f\u30d5\u30ec\u30fc\u30ba\u3092\u5165\u529b\u3057\u30016\u3064\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u5019\u88dc\u30ec\u30dd\u30fc\u30c8\u306e\u4e2d\u304b\u30891\u3064\u3092\u9078\u629e\u3059\u308b\u3060\u3051\u3067\u3059\u3002. \u6570\u9031\u9593\u3001\u6570\u30f6\u6708 ...\n\n 9. \u7121\u6599\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u8abf\u67fb\u30c4\u30fc\u30eb10\u9078\uff08Google\u30ad\u30fc\u30ef\u30fc\u30c9\u30d7\u30e9\u30f3\u30ca\u30fc\u4ee5\u5916\u306e\u3082\u306e\uff09 | Ahrefs\u30d6\u30ed\u30b0- \u4f7f\u3048\u308bSEO\u60c5\u5831\u3092\u304a\u5c4a\u3051 | SEO ... [ahrefs.jp]\n Google\u30ad\u30fc\u30ef\u30fc\u30c9\u30d7\u30e9\u30f3\u30ca\u30fc\u4ee5\u5916\u306e\u7121\u6599\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u8abf\u67fb\u30c4\u30fc\u30eb\u3092\u7d39\u4ecb\u3057\u307e\u3059\u3002Google\u30c8\u30ec\u30f3\u30c9\u3001Ahrefs\u30ad\u30fc\u30ef\u30fc\u30c9\u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u30fc\u3001Keyword\n Sheeter\u306a\u3069\u3001\u691c\u7d22\u30dc\u30ea\u30e5\u30fc\u30e0\u3084\u30b3\u30f3\u30da\u30c6\u30a3\u30b7\u30e7\u30f3\u3001\u95a2\u9023\u30ad\u30fc\u30ef\u30fc\u30c9\u306a\u3069\u306e\u60c5\u5831\u3092\u5f97\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\n\n 10. SEO\u30ad\u30fc\u30ef\u30fc\u30c9\u8abf\u67fb\u306e\u624b\u9806\u3092\u5fb9\u5e95\u89e3\u8aac - Kinsta [kinsta.com]\n SEO\u306b\u52b9\u679c\u7684\u306a\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u898b\u3064\u3051\u308b\u305f\u3081\u306e\u624b\u9806\u3068\u3001\u304a\u3059\u3059\u3081\u306e\u5206\u6790\u30c4\u30fc\u30eb\u3092\u89e3\u8aac\u3057\u307e\u3059\u3002\u30ad\u30fc\u30ef\u30fc\u30c9\u306e\u96e3\u6613\u5ea6\u3001\u691c\u7d22\u30dc\u30ea\u30e5\u30fc\u30e0\u3001\u30e6\u30fc\u30b6\u30fc\u306e\u610f\u56f3\u306a\u3069\u3092\u628a\u63e1\u3057\u3001\u30d3\u30b8\u30cd\u30b9\u306b\u6709\u76ca\u306a\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u9078\u629e\u3059\u308b\u30b3\n \u30c4\u3092\u5b66\u3073\u307e\u3057\u3087\u3046\u3002\n\nddgr (? for help) ?\n\nomniprompt keys:\n n, p, f fetch the next, prev or first set of search results\n index open the result corresponding to index in browser\n o [index|range|a ...] open space-separated result indices, ranges or all\n O [index|range|a ...] like key 'o', but try to open in a GUI browser\n d keywords new DDG search for 'keywords' with original options\n should be used to search omniprompt keys and indices\n x toggle url expansion\n c index copy url to clipboard\n q, ^D, double Enter exit ddgr\n ? show omniprompt help\n * other inputs are considered as new search keywords\n\nddgr (? for help) 1 (1)\nddgr (? for help) d \u732b \u5b63\u8a9e (2)\n\n 1. \u5b63\u8a9e\u3068\u3057\u3066\u8868\u73fe\u3055\u308c\u308b\u732b\u305f\u3061 \u6625\u3084\u51ac\u306e\u5b63\u8a9e\u3084\u732b\u306e\u4ff3\u53e5\u3092\u8a60\u3093\u3060\u4ff3\u4eba\u305f\u3061\u3092\u7d39\u4ecb | \u30da\u30c8\u30b3\u30c8\uff08Petokoto\uff09 [petokoto.com]\n \u732b\u304c\u6625\u306e\u5b63\u8a9e\u3068\u3057\u3066\u4f7f\u308f\u308c\u308b\u7406\u7531\u3084\u3001\u732b\u306b\u95a2\u3059\u308b\u6709\u540d\u306a\u4ff3\u53e5\u3084\u732b\u306e\u604b\u306b\u3064\u3044\u3066\u7d39\u4ecb\u3059\u308b\u30da\u30c8\u30b3\u30c8\u306e\u8a18\u4e8b\u3067\u3059\u3002\u732b\u306e\u5b63\u8a9e\u3084\u732b\u306e\u4ff3\u53e5\u3092\u77e5\u308a\u305f\u3044\u65b9\u306f\u305c\u3072\u3054\u89a7\u304f\u3060\u3055\u3044\u3002\n (\u4ee5\u4e0b\u7701\u7565)\n$ ddgr -n5 \u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9 (3)\n$ ddgr -j ddgr DuckDuckGo (4)\n\n\n\n\n\n1\u4ef6\u76ee\u306e\u691c\u7d22\u7d50\u679c\u3092\u30c7\u30d5\u30a9\u30eb\u30c8\u306e\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067\u958b\u304f\n\n\n\u5225\u306e\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9\n\n\n\u691c\u7d22\u7d50\u679c\u304c\u753b\u9762\u306b\u53ce\u307e\u3089\u306a\u3044\u306e\u30671\u30da\u30fc\u30b85\u4ef6\u306b\n\n\n\u691c\u7d22\u7d50\u679c\u306e\u4e00\u4ef6\u76ee\u3092\u958b\u304f\n\n\n\n\n\n\nddgr\u306e\u691c\u7d22\u7d50\u679c\u3092\u7279\u5b9a\u306e\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067\u4f7f\u3046\n\n\nddgr \u306f\u74b0\u5883\u5909\u6570 BROWSER \u3092\u8a8d\u8b58\u3059\u308b\u306e\u3067\u3053\u308c\u3092\u6307\u5b9a\u3059\u308b\u3053\u3068\u3067ddgr\u306e\u691c\u7d22\u7d50\u679c\u3092\u30c7\u30d5\u30a9\u30eb\u30c8\u4ee5\u5916\u306e\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3067\u958b\u304f\u3053\u3068\u304c\u51fa\u6765\u307e\u3059\uff0c\u7aef\u672b\u3067\u52d5\u4f5c\u3059\u308bw3m\u3084lynx\u306a\u3069\u306e\u30c6\u30ad\u30b9\u30c8\u30d6\u30e9\u30a6\u30b6\u3067\u3042\u308c\u3070\u540c\u3058\u7aef\u672b\u306e\u4e2d\u3067\u8d77\u52d5\u3057\u3066\uff0c\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u3092\u7d42\u4e86\u3059\u308b\u3068\u307e\u305fddgr\u306b\u623b\u3063\u3066\u304d\u307e\u3059\uff0e\n\n\n\n$ BROWSER=dillo ddgr -n5 \u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9 (1)\n$ BROWSER=w3m ddgr -n5 \u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9 (2)\n\n\n\n\n\n\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u306b\u8efd\u91cf\u306adillo\u3092\u5229\u7528\n\n\n\u30a6\u30a7\u30d6\u30d6\u30e9\u30a6\u30b6\u306b\u30c6\u30ad\u30b9\u30c8\u30d6\u30e9\u30a6\u30b6\u306ew3m\u3092\u5229\u7528\n\n\n\n\n\n\ntor\u7d4c\u7531\u3067\u5229\u7528\n\n\ntorify\u3084torsocks\u3092\u631f\u3093\u3067tor\u7d4c\u7531\u3067\u5229\u7528\u3057\u305f\u308a\u3082\uff0e\n\n\n\n$ BROWSER=w3m torify ddgr -n5 site:torproject.org check\n$ BROWSER=w3m torsocks ddgr -j site:torproject.org check\n\n\n\n\u4fbf\u5229\u306b\u4f7f\u3048\u305d\u3046\u3067\u3059 :)\n\n\n\n\u74b0\u5883\n\n$ dpkg-query -W ddgr w3m tor torsocks dillo\nddgr 2.2-1\ndillo 3.0.5-7.1\ntor 0.4.8.13-2\ntorsocks 2.4.0-2\nw3m 0.5.3+git20230121-2+b3\n$ lsb_release -dr\nDescription: Debian GNU/Linux trixie/sid\nRelease: n/a\n$ arch\nx86_64", "date_published": "2024-11-14T07:24:17+09:00", "date_modified": "2024-11-14T07:32:26+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "C9C4DA", "ddgr", "DuckDuckGo", "FCF8FF", "googler", "tor", "Debian", "Linux", "sid" ] }, { "id": "http://matoken.org/blog/?p=2810", "url": "https://matoken.org/blog/2020/06/12/calculate-the-address-to-use-in-tor-hidden-service-vanity-addresses/", "title": "tor\u306ehidden service\u3067\u4f7f\u3046\u30a2\u30c9\u30ec\u30b9\u3092\u8a08\u7b97\u3059\u308b(Vanity Addresses)", "content_html": "
\n
\n
\n

\u6700\u8fd1\u3053\u306e\u3088\u3046\u306a\u8a18\u4e8b\u3092\u8aad\u307f\u307e\u3057\u305f\uff0e

\n
\n\n
\n

\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
\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

\n
\n
\n

\u3068\u308a\u3042\u3048\u305a /etc/tor/torrc \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

\n
\n
\n
\n
HiddenServiceDir /var/lib/tor/hidden_service/\nHiddenServicePort 80 127.0.0.1:80
\n
\n
\n
\n

\u3053\u306e\u3068\u304d\u306e\u30a2\u30c9\u30ec\u30b9\u306ftor\u518d\u8d77\u52d5\u5f8c\u306b HiddenServiceDir \u4ee5\u4e0b\u306b\u4f5c\u3089\u308c\u308b hostname \u30d5\u30a1\u30a4\u30eb\u306e\u4e2d\u306e\u540d\u524d\u306b\u306a\u308a\u307e\u3059\uff0e

\n
\n
\n
\n
$ sudo cat /var/lib/tor/hidden_service/hostname\ntbiettfnprnqpoccrz3ll7hioprbyjoam2n6okihpadf5ukaa4hwrwad.onion
\n
\n
\n
\n

\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

\n
\n
\n

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
\n\u4eca\u306fv2,v3 \u3092\u4f75\u7528\u3057\u3066\u3044\u308b\u3068\u3053\u308d\u3082\u591a\u3044\u3088\u3046\u3067\u3059\uff0e

\n
\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
Onion v2Onion v3
\n

hostname\u6587\u5b57\u9577

\n
\n

16

\n
\n

56

\n
\n

\u9375\u5f62\u5f0f

\n
\n

RSA

\n
\n

ed25519

\n
\n

\u9375\u30d5\u30a1\u30a4\u30eb\u540d

\n
\n

private_key

\n
\n

hs_ed25519_secret_key hs_ed25519_public_key

\n
\n
\n

(\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
\n\u3053\u3046\u3044\u3063\u305f\u30a2\u30c9\u30ec\u30b9\u306fVanity Addresses \u3068\u3044\u3046\u3088\u3046\u3067\u3059\uff0e

\n
\n
\n

\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

\n
\n
\n
\n
\n

Onion v2 \u30a2\u30c9\u30ec\u30b9\u3092 eschalot \u3067\u63a2\u3059

\n
\n
\n
\n
\n

add 2020-07-28)

\n
\n
\n

Onion v2 \u30a2\u30c9\u30ec\u30b9\u306f2021\u5e7411\u6708\u3042\u305f\u308a\u3067\u4f7f\u3048\u306a\u304f\u306a\u308b\u3088\u3046\u3067\u3059\uff0e

\n
\n\n
\n
\n
\n

Onion v2 \u30a2\u30c9\u30ec\u30b9\u3092 eschalot \u3068\u3044\u3046\u30c4\u30fc\u30eb\u3092\u4f7f\u3063\u3066\u307f\u307e\u3059\uff0e

\n
\n\n
\n
\u5c0e\u5165
\n
\n
$ 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 >> 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
\n
\n
\n
\n

\u4ee5\u4e0b\u306f -t \u3067\u30b9\u30ec\u30c3\u30c9\u6570\u3092\u6307\u5b9a\uff0c-v \u3067\u5197\u9577\u51fa\u529b\uff0c-p \u3067 abc \u65b9\u59cb\u307e\u308b\u30db\u30b9\u30c8\u540d\u3092\u63a2\u3057\u3066\u3044\u307e\u3059\uff0e
\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

\n
\n
\n
\n
$ 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
\n
\n
\n
\n

-r \u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u6b63\u898f\u8868\u73fe\u304c\u5229\u7528\u3067\u304d\u307e\u3059\uff0e\u4ee5\u4e0b\u306e\u4f8b\u306f abc \u304b\u3089\u59cb\u307e\u308a bca \u3067\u7d42\u308f\u308b\u30db\u30b9\u30c8\u540d\u304b\uff0cdeadbeef \u3067\u59cb\u307e\u308b\u30a2\u30c9\u30ec\u30b9\u3092\u63a2\u3057\u3066\u3044\u307e\u3059\uff0e

\n
\n
\n
\n
$ ./eschalot -t`nproc` -v -r \"^abc.*bca^|^deadbeef\"
\n
\n
\n
\n

-c \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
\n\u30d5\u30a1\u30a4\u30eb\u306b\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u3057\u3066\u304a\u304f\u3068\u4fbf\u5229\u3067\u3059\uff0e

\n
\n
\n
\n
$ ./eschalot -cvt`nproc` -r \"^abc.bca^|^deadbeef\" >> result.log
\n
\n
\n
\n

\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 -f \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-l \u30aa\u30d7\u30b7\u30e7\u30f3\u3067 7-16 \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

\n
\n
\n
\n
$ ./eschalot -cvt`nproc` -f ./wordlist.dic >> result.log
\n
\n
\n
\n

GPU\u3092\u4f7f\u3046\u30c4\u30fc\u30eb\u3082\u8907\u6570\u3042\u308a\u307e\u3059\uff0e\u4f8b\u3048\u3070 Scallion \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?)

\n
\n\n
\n
\n
\n

Onion v3 \u30a2\u30c9\u30ec\u30b9\u3092 mkp224o \u3067\u63a2\u3059

\n
\n
\n

Onion v3 \u30a2\u30c9\u30ec\u30b9\u306f mkp224o \u3068\u3044\u3046\u30c4\u30fc\u30eb\u3092\u4f7f\u3063\u3066\u307f\u307e\u3057\u305f\uff0e

\n
\n\n
\n

configure option\u306b --enable-amd64-51-30k , --enable-amd64-64-24k \u3068\u3044\u3046\u3082\u306e\u304c\u3042\u308b\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\u304c\uff0c\u306a\u3057\uff0c--enable-amd64-51-30k , --enable-amd64-64-24k \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\"\u2122\" i5-3320M)

\n
\n
\n
\u5c0e\u5165
\n
\n
$ 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 (>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
\n
\n
\n
\n

\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

\n
\n
\n
\n
$ 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
\n
\n
\n
\n

\u7d50\u679c\u3092 onion \u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u683c\u7d0d\u3059\u308b\u3088\u3046\u306b\u3057\u307e\u3057\u305f\uff0e

\n
\n
\n
\n
$ time ./mkp224o -d ./onion abcd
\n
\n
\n
\n

\u30d5\u30a3\u30eb\u30bf\u306f\u8907\u6570\u66f8\u3051\u307e\u3059\uff0e

\n
\n
\n
\n
$ time ./mkp224o -d ./onion abcd efgh ijkl
\n
\n
\n
\n

-S \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

\n
\n
\n
\n
$ ./mkp224o -S 300 -d ./onion -f ./wordlist.dic
\n
\n
\n
\n

\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

\n
\n
\n
Intel\u00ae Core\"\u2122\" i5-3320M
\n
\n
>calc/sec:202602.624226, succ/sec:0.000000, rest/sec:0.000000, elapsed:300.129147sec\n>calc/sec:177378.183948, succ/sec:0.006667, rest/sec:0.006667, elapsed:600.131277sec\n>calc/sec:155232.657607, succ/sec:0.006667, rest/sec:0.006667, elapsed:900.106274sec\n>calc/sec:111928.180486, succ/sec:0.000000, rest/sec:0.000000, elapsed:1200.166338sec
\n
\n
\n
\n
Raspberry Pi 3 model B(aarch64 kernel)
\n
\n
>calc/sec:103867.893552, succ/sec:0.003333, rest/sec:0.003333, elapsed:300.130969sec\n>calc/sec:100761.039921, succ/sec:0.003333, rest/sec:0.003333, elapsed:600.155046sec\n>calc/sec:94511.877034, succ/sec:0.009999, rest/sec:0.009999, elapsed:900.194934sec\n>calc/sec:91854.274354, succ/sec:0.003334, rest/sec:0.003334, elapsed:1200.130938sec
\n
\n
\n
\n
\n
\n

Vanity Addresses \u306e\u8a2d\u5b9a

\n
\n
\n

Onion v2

\n
\n

torrc \u306e HiddenServiceDir \u4ee5\u4e0b\u306e hostname, hs_ed25519_public_key, hs_ed25519_secret_key \u3092\u9000\u907f\u3057\u307e\u3059\uff0e
\n\u6b21\u306b private_key \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

\n
\n
\n

\u305d\u306e\u5f8ctor\u306e\u30b5\u30fc\u30d3\u30b9\u3092\u518d\u8d77\u52d5\u3059\u308b\u3068\u53cd\u6620\u3055\u308c\u3066 hostname \u30d5\u30a1\u30a4\u30eb\u3082\u4f5c\u6210\u3055\u308c\u307e\u3059\uff0e

\n
\n
\n
\n
$ 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> MIICXQIBAAKBgQDIHD5uCynAW/Y1Vmyef8KrKuyFMzavij5Gl6aHYoiaGWNkJOZ7\n> P/Xc1Z78YTZ7LtzpWCAWLax4PmIhQiwPhldsD/kVWKAi0fODxaP/Z0XoJjqIfx8f\n> CmVWIQ1L9TVp9kfp8nLtXm9CnawCT98g0VE/jvZEddBV2oaVCuq88BTsoQIEAQBz\n> 4QKBgBHzMeQAOOkyB3yCc51oYOh92jYLyXJuc511HR9yki7b/CxIhjL7miA+GVmJ\n> n4DD9nKubE5/xE6KrNnm3YZ1kmar2Yl/8fLJxBUrVoDUeGAc7i77i+tqM4d1LCr3\n> X1Ead8S7WpnnTVSmRHiLjuebaF78BWiMII4+3v9d1e6PQXbRAkEA9IJknhUNSO5b\n> 1bzEIOmybg94r3fvBdWsc9xiwm6ONMBI2WyAVwmxDZ63Spwb/AyKCEblwekcaw6h\n> NMmhBQeUmQJBANGDs597RqBQUsFqtb5BoBkQgELIVeS4xKgZXrDI9SKfnnpTxv8Z\n> ypah+g335EN3/bBgfbqy8C7zFZhjHclzFUkCQQDcoP4aDG1zPO4TFcnguwvnGv/j\n> kOBS3h0CJOVY+rLTlUaekvjD6ugVLQ0olFItL1wyyZ3IifKcDHoDWJo/OOZZAkAQ\n> 82dcvUGLOUpZObyFTdyUkU/eytiXaQZM0UdTDPnGYmrH/CBEaoSSjgRG7MEdFf2k\n> r+VVLqSnp+g6tFwp9It5AkBI4fJxCrrANt3E/CCrFW4iZXIqP3aPXHHZK5SqtQzJ\n> gBKUN8HSRxo/dURQPOLKKX0ynVJaMhg5UO4tQ3rHiJwa\n> -----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`
\n
\n
\n
\n
\n

Onion v3

\n
\n

torrc \u306e HiddenServiceDir \u4ee5\u4e0b\u306e hostname, hs_ed25519_public_key, hs_ed25519_secret_key \u3092\u9000\u907f\u3057\u307e\u3059\uff0e
\n\u6b21\u306b hs_ed25519_secret_key \u30d5\u30a1\u30a4\u30eb\u3092tor\u306e\u6a29\u9650\u3067\u30b3\u30d4\u30fc\u3057\u307e\u3059\uff0e

\n
\n
\n

\u305d\u306e\u5f8ctor\u306e\u30b5\u30fc\u30d3\u30b9\u3092\u518d\u8d77\u52d5\u3059\u308b\u3068\u53cd\u6620\u3055\u308c\u3066 hostname, hs_ed25519_public_key \u30d5\u30a1\u30a4\u30eb\u3082\u4f5c\u6210\u3055\u308c\u307e\u3059\uff0e

\n
\n
\n
\n
$ 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`
\n
\n
\n
\n
\n
\n
\n

\u307e\u3068\u3081

\n
\n
\n

\u3068\u3044\u3046\u611f\u3058\u30673\u65e5\u307b\u3069\u52d5\u304b\u3057\u3066\u307f\u307e\u3057\u305f\u304c matoken \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?)
\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

\n
\n
\n

\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

\n
\n
\n
\n
$ torsocks w3m -dump http://matoken3inrzd4ks.onion/\n _     _   _             ____               _        _              _____\n| |__ | |_| |_ _ __ _   / / / __ ___   __ _| |_ ___ | | _____ _ __ |___ /\n| '_ \\| __| __| '_ (_) / / / '_ ` _ \\ / _` | __/ _ \\| |/ / _ \\ '_ \\  |_ \\\n| | | | |_| |_| |_) | / / /| | | | | | (_| | || (_) |   <  __/ | | |___) |\n|_| |_|\\__|\\__| .__(_)_/_/ |_| |_| |_|\\__,_|\\__\\___/|_|\\_\\___|_| |_|____/\n              |_|\n _                   _ _  _   _                     _                __\n(_)_ __  _ __ ______| | || | | | _____   ___  _ __ (_) ___  _ __    / /\n| | '_ \\| '__|_  / _` | || |_| |/ / __| / _ \\| '_ \\| |/ _ \\| '_ \\  / /\n| | | | | |   / / (_| |__   _|   <\\__ \\| (_) | | | | | (_) | | | |/ /\n|_|_| |_|_|  /___\\__,_|  |_| |_|\\_\\___(_)___/|_| |_|_|\\___/|_| |_/_/
\n
\n
\n
\n
\u74b0\u5883
\n
\n
$ 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
\n
\n
\n
\n
\n

\n", "content_text": "\u6700\u8fd1\u3053\u306e\u3088\u3046\u306a\u8a18\u4e8b\u3092\u8aad\u307f\u307e\u3057\u305f\uff0e\n\n\n\nGoogle\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 – GIGAZINE\n\n\n\n\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\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\n\n\n\u3068\u308a\u3042\u3048\u305a /etc/tor/torrc \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\n\n\n\nHiddenServiceDir /var/lib/tor/hidden_service/\nHiddenServicePort 80 127.0.0.1:80\n\n\n\n\u3053\u306e\u3068\u304d\u306e\u30a2\u30c9\u30ec\u30b9\u306ftor\u518d\u8d77\u52d5\u5f8c\u306b HiddenServiceDir \u4ee5\u4e0b\u306b\u4f5c\u3089\u308c\u308b hostname \u30d5\u30a1\u30a4\u30eb\u306e\u4e2d\u306e\u540d\u524d\u306b\u306a\u308a\u307e\u3059\uff0e\n\n\n\n$ sudo cat /var/lib/tor/hidden_service/hostname\ntbiettfnprnqpoccrz3ll7hioprbyjoam2n6okihpadf5ukaa4hwrwad.onion\n\n\n\n\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\n\n\nOnion 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\n\u4eca\u306fv2,v3 \u3092\u4f75\u7528\u3057\u3066\u3044\u308b\u3068\u3053\u308d\u3082\u591a\u3044\u3088\u3046\u3067\u3059\uff0e\n\n\n\n\n\n\n\n\n\n\nOnion v2\nOnion v3\n\n\n\n\n\nhostname\u6587\u5b57\u9577\n\n\n16\n\n\n56\n\n\n\n\n\u9375\u5f62\u5f0f\n\n\nRSA\n\n\ned25519\n\n\n\n\n\u9375\u30d5\u30a1\u30a4\u30eb\u540d\n\n\nprivate_key\n\n\nhs_ed25519_secret_key hs_ed25519_public_key\n\n\n\n\n\n(\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\n\u3053\u3046\u3044\u3063\u305f\u30a2\u30c9\u30ec\u30b9\u306fVanity Addresses \u3068\u3044\u3046\u3088\u3046\u3067\u3059\uff0e\n\n\n\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\n\n\n\n\nOnion v2 \u30a2\u30c9\u30ec\u30b9\u3092 eschalot \u3067\u63a2\u3059\n\n\n\n\nadd 2020-07-28)\n\n\nOnion v2 \u30a2\u30c9\u30ec\u30b9\u306f2021\u5e7411\u6708\u3042\u305f\u308a\u3067\u4f7f\u3048\u306a\u304f\u306a\u308b\u3088\u3046\u3067\u3059\uff0e\n\n\n\nOnion Service version 2 deprecation timeline | Tor Blog\n\n\n\n\n\nOnion v2 \u30a2\u30c9\u30ec\u30b9\u3092 eschalot \u3068\u3044\u3046\u30c4\u30fc\u30eb\u3092\u4f7f\u3063\u3066\u307f\u307e\u3059\uff0e\n\n\n\nReclaimYourPrivacy/eschalot: It is important to stress that we have not written this piece of software (see LICENSE)\n\n\n\n\u5c0e\u5165\n\n$ 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 >> 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\n\n\n\n\u4ee5\u4e0b\u306f -t \u3067\u30b9\u30ec\u30c3\u30c9\u6570\u3092\u6307\u5b9a\uff0c-v \u3067\u5197\u9577\u51fa\u529b\uff0c-p \u3067 abc \u65b9\u59cb\u307e\u308b\u30db\u30b9\u30c8\u540d\u3092\u63a2\u3057\u3066\u3044\u307e\u3059\uff0e\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\n\n\n\n$ 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\n\n\n\n-r \u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u6b63\u898f\u8868\u73fe\u304c\u5229\u7528\u3067\u304d\u307e\u3059\uff0e\u4ee5\u4e0b\u306e\u4f8b\u306f abc \u304b\u3089\u59cb\u307e\u308a bca \u3067\u7d42\u308f\u308b\u30db\u30b9\u30c8\u540d\u304b\uff0cdeadbeef \u3067\u59cb\u307e\u308b\u30a2\u30c9\u30ec\u30b9\u3092\u63a2\u3057\u3066\u3044\u307e\u3059\uff0e\n\n\n\n$ ./eschalot -t`nproc` -v -r \"^abc.*bca^|^deadbeef\"\n\n\n\n-c \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\n\u30d5\u30a1\u30a4\u30eb\u306b\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u3057\u3066\u304a\u304f\u3068\u4fbf\u5229\u3067\u3059\uff0e\n\n\n\n$ ./eschalot -cvt`nproc` -r \"^abc.bca^|^deadbeef\" >> result.log\n\n\n\n\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 -f \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-l \u30aa\u30d7\u30b7\u30e7\u30f3\u3067 7-16 \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\n\n\n\n$ ./eschalot -cvt`nproc` -f ./wordlist.dic >> result.log\n\n\n\nGPU\u3092\u4f7f\u3046\u30c4\u30fc\u30eb\u3082\u8907\u6570\u3042\u308a\u307e\u3059\uff0e\u4f8b\u3048\u3070 Scallion \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?)\n\n\n\nlachesis/scallion: GPU-based Onion Hash generator\n\n\n\n\n\nOnion v3 \u30a2\u30c9\u30ec\u30b9\u3092 mkp224o \u3067\u63a2\u3059\n\n\nOnion v3 \u30a2\u30c9\u30ec\u30b9\u306f mkp224o \u3068\u3044\u3046\u30c4\u30fc\u30eb\u3092\u4f7f\u3063\u3066\u307f\u307e\u3057\u305f\uff0e\n\n\n\ncathugger/mkp224o: vanity address generator for tor onion v3 (ed25519) hidden services\n\n\n\nconfigure option\u306b --enable-amd64-51-30k , --enable-amd64-64-24k \u3068\u3044\u3046\u3082\u306e\u304c\u3042\u308b\u306e\u3067\u8a66\u3057\u3066\u307f\u307e\u3057\u305f\u304c\uff0c\u306a\u3057\uff0c--enable-amd64-51-30k , --enable-amd64-64-24k \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 i5-3320M)\n\n\n\u5c0e\u5165\n\n$ 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 (>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\n\n\n\n\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\n\n\n\n$ 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\n\n\n\n\u7d50\u679c\u3092 onion \u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u683c\u7d0d\u3059\u308b\u3088\u3046\u306b\u3057\u307e\u3057\u305f\uff0e\n\n\n\n$ time ./mkp224o -d ./onion abcd\n\n\n\n\u30d5\u30a3\u30eb\u30bf\u306f\u8907\u6570\u66f8\u3051\u307e\u3059\uff0e\n\n\n\n$ time ./mkp224o -d ./onion abcd efgh ijkl\n\n\n\n-S \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\n\n\n\n$ ./mkp224o -S 300 -d ./onion -f ./wordlist.dic\n\n\n\n\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\n\n\nIntel\u00ae Core i5-3320M\n\n>calc/sec:202602.624226, succ/sec:0.000000, rest/sec:0.000000, elapsed:300.129147sec\n>calc/sec:177378.183948, succ/sec:0.006667, rest/sec:0.006667, elapsed:600.131277sec\n>calc/sec:155232.657607, succ/sec:0.006667, rest/sec:0.006667, elapsed:900.106274sec\n>calc/sec:111928.180486, succ/sec:0.000000, rest/sec:0.000000, elapsed:1200.166338sec\n\n\n\nRaspberry Pi 3 model B(aarch64 kernel)\n\n>calc/sec:103867.893552, succ/sec:0.003333, rest/sec:0.003333, elapsed:300.130969sec\n>calc/sec:100761.039921, succ/sec:0.003333, rest/sec:0.003333, elapsed:600.155046sec\n>calc/sec:94511.877034, succ/sec:0.009999, rest/sec:0.009999, elapsed:900.194934sec\n>calc/sec:91854.274354, succ/sec:0.003334, rest/sec:0.003334, elapsed:1200.130938sec\n\n\n\n\n\nVanity Addresses \u306e\u8a2d\u5b9a\n\n\nOnion v2\n\ntorrc \u306e HiddenServiceDir \u4ee5\u4e0b\u306e hostname, hs_ed25519_public_key, hs_ed25519_secret_key \u3092\u9000\u907f\u3057\u307e\u3059\uff0e\n\u6b21\u306b private_key \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\n\n\n\u305d\u306e\u5f8ctor\u306e\u30b5\u30fc\u30d3\u30b9\u3092\u518d\u8d77\u52d5\u3059\u308b\u3068\u53cd\u6620\u3055\u308c\u3066 hostname \u30d5\u30a1\u30a4\u30eb\u3082\u4f5c\u6210\u3055\u308c\u307e\u3059\uff0e\n\n\n\n$ 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> MIICXQIBAAKBgQDIHD5uCynAW/Y1Vmyef8KrKuyFMzavij5Gl6aHYoiaGWNkJOZ7\n> P/Xc1Z78YTZ7LtzpWCAWLax4PmIhQiwPhldsD/kVWKAi0fODxaP/Z0XoJjqIfx8f\n> CmVWIQ1L9TVp9kfp8nLtXm9CnawCT98g0VE/jvZEddBV2oaVCuq88BTsoQIEAQBz\n> 4QKBgBHzMeQAOOkyB3yCc51oYOh92jYLyXJuc511HR9yki7b/CxIhjL7miA+GVmJ\n> n4DD9nKubE5/xE6KrNnm3YZ1kmar2Yl/8fLJxBUrVoDUeGAc7i77i+tqM4d1LCr3\n> X1Ead8S7WpnnTVSmRHiLjuebaF78BWiMII4+3v9d1e6PQXbRAkEA9IJknhUNSO5b\n> 1bzEIOmybg94r3fvBdWsc9xiwm6ONMBI2WyAVwmxDZ63Spwb/AyKCEblwekcaw6h\n> NMmhBQeUmQJBANGDs597RqBQUsFqtb5BoBkQgELIVeS4xKgZXrDI9SKfnnpTxv8Z\n> ypah+g335EN3/bBgfbqy8C7zFZhjHclzFUkCQQDcoP4aDG1zPO4TFcnguwvnGv/j\n> kOBS3h0CJOVY+rLTlUaekvjD6ugVLQ0olFItL1wyyZ3IifKcDHoDWJo/OOZZAkAQ\n> 82dcvUGLOUpZObyFTdyUkU/eytiXaQZM0UdTDPnGYmrH/CBEaoSSjgRG7MEdFf2k\n> r+VVLqSnp+g6tFwp9It5AkBI4fJxCrrANt3E/CCrFW4iZXIqP3aPXHHZK5SqtQzJ\n> gBKUN8HSRxo/dURQPOLKKX0ynVJaMhg5UO4tQ3rHiJwa\n> -----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`\n\n\n\n\nOnion v3\n\ntorrc \u306e HiddenServiceDir \u4ee5\u4e0b\u306e hostname, hs_ed25519_public_key, hs_ed25519_secret_key \u3092\u9000\u907f\u3057\u307e\u3059\uff0e\n\u6b21\u306b hs_ed25519_secret_key \u30d5\u30a1\u30a4\u30eb\u3092tor\u306e\u6a29\u9650\u3067\u30b3\u30d4\u30fc\u3057\u307e\u3059\uff0e\n\n\n\u305d\u306e\u5f8ctor\u306e\u30b5\u30fc\u30d3\u30b9\u3092\u518d\u8d77\u52d5\u3059\u308b\u3068\u53cd\u6620\u3055\u308c\u3066 hostname, hs_ed25519_public_key \u30d5\u30a1\u30a4\u30eb\u3082\u4f5c\u6210\u3055\u308c\u307e\u3059\uff0e\n\n\n\n$ 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`\n\n\n\n\n\n\n\u307e\u3068\u3081\n\n\n\u3068\u3044\u3046\u611f\u3058\u30673\u65e5\u307b\u3069\u52d5\u304b\u3057\u3066\u307f\u307e\u3057\u305f\u304c matoken \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?)\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\n\n\n\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\n\n\n\n$ torsocks w3m -dump http://matoken3inrzd4ks.onion/\n _ _ _ ____ _ _ _____\n| |__ | |_| |_ _ __ _ / / / __ ___ __ _| |_ ___ | | _____ _ __ |___ /\n| '_ \\| __| __| '_ (_) / / / '_ ` _ \\ / _` | __/ _ \\| |/ / _ \\ '_ \\ |_ \\\n| | | | |_| |_| |_) | / / /| | | | | | (_| | || (_) | < __/ | | |___) |\n|_| |_|\\__|\\__| .__(_)_/_/ |_| |_| |_|\\__,_|\\__\\___/|_|\\_\\___|_| |_|____/\n |_|\n _ _ _ _ _ _ __\n(_)_ __ _ __ ______| | || | | | _____ ___ _ __ (_) ___ _ __ / /\n| | '_ \\| '__|_ / _` | || |_| |/ / __| / _ \\| '_ \\| |/ _ \\| '_ \\ / /\n| | | | | | / / (_| |__ _| <\\__ \\| (_) | | | | | (_) | | | |/ /\n|_|_| |_|_| /___\\__,_| |_| |_|\\_\\___(_)___/|_| |_|_|\\___/|_| |_/_/\n\n\n\n\u74b0\u5883\n\n$ 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", "date_published": "2020-06-12T07:10:21+09:00", "date_modified": "2020-07-28T22:43:49+09:00", "authors": [ { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" } ], "author": { "name": "matoken", "url": "https://matoken.org/blog/author/matoken/", "avatar": "https://secure.gravatar.com/avatar/38f5f3b575c5eb45cda6aa659bca119ac7a5e16b46565e869d0030e3bd66981d?s=512&d=mm&r=g" }, "tags": [ "hiddenservice", "tor", "Buster", "Linux", "Raspberry Pi OS" ] } ] }