Spent today rewriting the reference C implementation of #SipHash, a secure message authentication code (MAC), in pure gawk (gnu #awk).

I was curious how well the bignum support (-M) works since you need full 64 bit ints (not 64 bit floats -- effectively 53 usable bits). Also needed #gawk because plain old awk doesn't have bit operators.

My inspiration came when I stumbled upon AES written in pure gawk (https://github.com/GinSanaduki/AES_in_AWK/)

GitHub - GinSanaduki/AES_in_AWK: AWK (GAWK) version implementation for the purpose of understanding AES from the specification

AWK (GAWK) version implementation for the purpose of understanding AES from the specification - GinSanaduki/AES_in_AWK

GitHub
🌕 UUIDv47:結合 UUIDv4 的隱私與 UUIDv7 的效能,並以 SipHash 遮蔽時間戳記
➤ 在資料庫中實現時間排序 UUIDv7,同時對外呈現 UUIDv4 介面
https://github.com/stateless-me/uuidv47
這是一個 C 語言函式庫,旨在解決 UUIDv7 在資料庫中的排序性與 UUIDv4 在 API 邊界的視覺化需求之間的衝突。它透過將 UUIDv7 的時間戳記欄位與一個基於 UUID 隨機位元並使用 SipHash-2-4 加密的金鑰進行 XOR 遮罩,從而在資料庫中儲存排序性良好的 UUIDv7,同時向 API 呈現外觀上類似 UUIDv4 的識別碼。此函式庫為 C89 標準、無外部依賴,支援雙向轉換、RFC 規範的版本/變體位元,並具備金鑰恢復抵抗性。
+ 太棒了!終於有一個解決方案可以兼顧 UUIDv7 的資料庫效能和 UUIDv4 的隨機性外觀。SipHash 的應用也很有趣。
+ 這個專案解決了我一直以來想到的問題!期待能有更廣泛的應用,尤其
#UUID #效能優化 #隱私保護 #C 語言 #SipHash
GitHub - stateless-me/uuidv47: ⚡ UUIDv47 = v4 privacy + v7 performance

⚡ UUIDv47 = v4 privacy + v7 performance. Contribute to stateless-me/uuidv47 development by creating an account on GitHub.

GitHub
🎉 Behold, the marvel of UUIDv47! A miraculous concoction for those who can't decide between #privacy and #performance. 🤹‍♂️ Just add a sprinkle of SipHash-magic, and voilà, you're still confused but now with extra steps! 🚀
https://github.com/stateless-me/uuidv47 #UUIDv47 #SipHash #TechInnovation #HackerNews #ngated
GitHub - stateless-me/uuidv47: ⚡ UUIDv47 = v4 privacy + v7 performance

⚡ UUIDv47 = v4 privacy + v7 performance. Contribute to stateless-me/uuidv47 development by creating an account on GitHub.

GitHub

UUIDv47: Store UUIDv7 in DB, emit UUIDv4 outside (SipHash-masked timestamp)

https://github.com/stateless-me/uuidv47

#HackerNews #UUIDv47 #UUIDv7 #UUIDv4 #SipHash #Database

GitHub - stateless-me/uuidv47: ⚡ UUIDv47 = v4 privacy + v7 performance

⚡ UUIDv47 = v4 privacy + v7 performance. Contribute to stateless-me/uuidv47 development by creating an account on GitHub.

GitHub

Это в исследовательских целях а не из-за реализации. Я изучаю сеть и психологию контингента. В том числе пытаюсь понять зачем некоторый контингент стремится отметиться в треде (обычно такие ничего дельного всё равно не пишут, тупо оставляют коммент уровня "здесь был Вася"), но потом бугуртит что их помянули в суе.

> хотя отвечаешь только ТС

Вообще-то нет. Это не личная переписка, это тред. К примеру если я отметился в каком-то треде, значит я в нём заинтересован и хочу за ним следить. Но иногда в таком случае приходится ходить на чужие инстансы чтобы увидеть другие комментарии, которые не сфедерировались нормально.

Плюс у такого подхода есть и ещё один положительный момент: это должно отбить охоту от зеваков, которые отмечаются в треде чисто забавы ради.

Я конечно понимаю что эти ваши бугурты растут из того факта что Мастодон изначально стремился стать аналогом Твиттера, а это значит тупо площадка для развлечения зевак, но федиверсу придётся уйти от этого подхода для дальнейшего развития, даже если пути с Мастодоном разойдутся.

Ладно, буду тегать только тебя, чтобы не срал в треды, к которых на самом деле не заинтересован. 🤣
У этих обычно люто бомбит когда их так называют ))
> ЧТО ЗА ПИДОРАСЫ В ПЛОХОМ СМЫСЛЕ ЭТОГО СЛОВА

А что за пидорасы в хорошем? 🤣

ЧТО ЗА ПИДОРАСЫ В ПЛОХОМ СМЫСЛЕ ЭТОГО СЛОВА ПРИДУМАЛИ ЭТОТ ВАШ ЁБАННЫЙ РАСТ?
ОДНИ УЁБКИ ПРИДУМАЛИ ИСПОЛЬЗОВАТЬ ХУЙ ЗНАЕТ КАКОЙ АЛГОРИТМ ДЛЯ DefaultHasher НИКАК НЕ ПРЕДУПРЕДИВ (КРОМЕ ДОКУМЕНТАЦИИ, КОТОРУЮ РАСТОБЛЯДИ НЕ ЧИТАЮТ) ЧТО НА ЕГО ЗНАЧЕНИЯ НЕЛЬЗЯ ПОЛАГАТЬСЯ
ДРУГИЕ УЁБКИ ПРИДУМАЛИ НЕСМОТРЯ НА ПРОСЬБУ В ДОКУМЕНТАЦИИ ТАК НЕ ДЕЛАТЬ ИСПОЛЬЗОВАТЬ ЭТИ ХЕШИ В СЕТЕВОМ БЛЯДЬ ПРОТОКОЛЕ ПОТОМУ ЧТО КАКИМ-ТО ЧУДОМ ОНО ТАКИ СОВМЕСТИМО МЕЖДУ СЕРВЕРОМ И КЛИЕНТОМ.
В ИТОГЕ Я ПЫТАЮСЬ РЕАЛИЗОВАТЬ ЭТОТ ПРОТОКОЛ, НАШЁЛ ПОСЛЕ 3 ЧАСОВ ПОИСКОВ ЧТО ЭТО ДОЛЖНО БЫТЬ SipHash-1-3(0,0), НАШЁЛ ДАЖЕ ЕГО РЕАЛИЗАЦИЮ НЕ НА РАСТЕ (ПОТОМУ ЧТО РЕАЛИЗАЦИЯ ИЗ СТДЛИБЫ НЕЧИТАЕМАЯ НАХУЙ И ВЫДАЁТ ПОД rustc И gccrs РАЗНЫЕ БЛЯТЬ СУКА БЛЯТЬ РЕЗУЛЬТАТЫ БЛЯТЬ) НО РАЗУМЕЕТСЯ ЭТА, СУКА, РЕАЛИЗАЦИЯ ВЫДАЁТ ДРУГИЕ ЗНАЧЕНИЯ ХЭША:
$2 = {deviceID = 6597919954511603000, orientation = {x = -0.00618121773, y = 0.0187707562, z = 0.00469268905,
w = 0.999793708}, position = {-0.107304089, 1.55303776, 0}, linearVelocity = {0, 0, 0}, angularVelocity = {
0, 0, 0}}
(gdb) print HEAD_ID
$3 = 6847954561691503390

КАК БЛЯТЬ ЭТО ПОНИМАТЬ? Я ПОНИМАЮ ЧТО ЭТОТ ХЭШ ДЛЯ ХЭШМАП, НО ДАЖЕ ХЭШМАПЫ ДОЛЖНЫ БЫТЬ БИНАРНО СОВМЕСТИМЫ НА СЛУЧАЙ КЭШИРОВАНИЯ В ФС, НАХУЙ ВОТ ТАК БЛЯТЬ ДЕЛАТЬ? И ЭТО ГОВНО ПИХУЮТ СЕЙЧАС ВСЮДУ БЛЯТЬ, ТАК И ЖАЖДУТ ЧТО-ТО ПЕРЕПИСАТЬ НА РАСТЕ? ДА КОГДА ВЫ УЖЕ ЗДОХНИТЕ НАХУЙ???
ВСЁ, Я НАХУЙ СГОРЕЛ, БОЛЬШЕ БЛЯТЬ НИКАКОГО РАСТА

#rust #alvr #siphash #siphash13 #идиоты #дебилы #кретины #долбоёбы #пукан #нахуй #полыхает #доколе
@ru @rf

Proposed solution for #DNS cookies: more chocolate. No, one mandatory algorithm https://en.wikipedia.org/wiki/SipHash (I didn't know #SipHash before) #IETF102
SipHash - Wikipedia