Path: ...!weretis.net!feeder6.news.weretis.net!i2pn.org!i2pn2.org!.POSTED!not-for-mail From: SugarBug <3883@sugar.bug> Newsgroups: news.admin.peering Subject: Re: Request Nova BBS add easier-to-remember search URL links for Usenet article lookups Date: Mon, 25 Mar 2024 01:15:38 -0500 Organization: Baggy Jeans Mafia (sybershock.com) Message-ID: <7a934407bd622175f2d2d515f677d9d4$1@sybershock.com> References: MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Injection-Info: i2pn2.org; logging-data="3139889"; mail-complaints-to="usenet@i2pn2.org"; posting-account="yZybWhCr+jI4C3MuGpPde+DhCwsjQrVZrsCOigcx7fM"; X-Spam-Checker-Version: SpamAssassin 4.0.0 X-Newsreader: 3883.7766 Bytes: 2104 Lines: 33 Some brainstorm thoughts ... What about a multi-name approach ... something like ... https://domain.url/group.name/article-number https://domain.url/hash/message-id-hash Some message-ids are ridiculously long with weird chars. Hash it. One could employ something like sha1 or tiger for the hash name. Or one may hash with the ubiquitous b2sum and truncate N chars. Or one may use the size parameter of b2sum: echo hello | b2sum -l 160 d2f799bb9610968a2efa8f7682d5f2f1d45163d7 - echo hello | b2sum -l 160 | tr -dc a-f0-9 | xxd -p -r | base32 2L3ZTO4WCCLIULX2R53IFVPS6HKFCY6X Or one may convert a long b2sum hash to ascii chars: echo $RANDOM$RANDOM$RANDOM | b2sum | tr -dc a-f0-9 | xxd -p -r \ | base64 | tr -dc a-zA-Z0-9 | head -c 24 xot1cQ6w8mJHbr0l2sWkU4e0 A hash table pointing to articles would be simple to re-build if anything gets corrupted. I'm assuming one is not going to use Rocksolid Light to pull down decades of Usenet history, but rather maybe a few hundred thousand articles max. Otherwise re-building all the hashes for a full Usenet feed could take days on a cheap VPS. On a multi-core high-end server it would be faster but may still take all day. -- 3883@sugar.bug | sybershock.com | sci.crypt