這是一種序列式(流式)資料加解密演算法,名為「甲骨符"。為什麼叫甲骨符呢?因為它的原理是將每個密鍵表拼合在一起組成一塊更大的密鍵表,就像一塊大甲骨(大烏龜骨板)由許多小甲骨組成一樣。每個密鍵表由256個相異2位元組資料組成,一共有256塊密鍵表,覆蓋了從0到65535的資料值。採用了本人原創的隨機數演算法,名為」均態分布「隨機數演算法。何謂」均態分布「呢?指數在數軸不同位置上無序排放,每個值只出現一次不重複。就好像玩撲克牌中的洗牌一樣,」均"指每個數的出現概率相等,「態"指每個數在數軸上的不同位置出現。密鍵表資料根據口令按均態分布來進行隨機設定。當然,這種均態分布不是真」均態分布「隨機演算法,是偽均態分布隨機演算法。因為它的數是有限的,總密鍵值是65536個(從0到65535),並不是無窮大。如果是無窮大的數,才是真均態分布隨機數。因為無窮大數沒有盡頭,它的值也就不會出現重複,符合定義的描述。這是一種可以復現的無限接近自然隨機數演算法,而真的自然隨機數是不能復現。就好比宇宙的誕生一樣,每個星球的幾何尺寸、空間位置都是自然隨機數。請問誰有能力去復現這個自然隨機數演算法?!就是月球被小行星撞擊的時間和地點也是乙個自然隨機數過程,請問誰有本事得到月球下一次被撞擊的時間和地點的準確資料呢!?哪怕是登陸火星的火星車,它的著落地點和時間也是個自然隨機過程,您能算出來嗎。
為什麼說是革命性的資料加解密演算法?因為它徹底解決了夏農大神老師(雖然他不知道有我這個學生)的一次性密碼的缺陷--同乙個口令不能兩次用在兩個相同長度而內容不同的檔案上。因為有 明文(p1) 異或 口令(k) = 密文(c1k),明文(p2) 異或 口令(k) = 密文(c2k)。當密文(c1k) 異或 密文(c2k) = 密文(p1p2)(暫且叫密文)時,再將 密文(p1p2) 異或 明文(p2) 就得到明文(p1),就這樣給破解了(天下譜慶啊,就sb也是破解密碼精英了,肯定把夏農大神老師氣得復現吶,他的論調不是說「一次一密"天下無敵不能破解嗎!!!)。而我呢,也是用異或加密,但我把加密後的密文擴大了兩倍,即先把乙個位元組明文擴充為兩個位元組的資料,然後再用兩個這樣的偽資料進行加密得出密文。解密時,把對應的兩個位元組的偽資料還原為乙個位元組的明文資料。這樣子,就是同乙個口令兩次用在兩個相同長度而內容不同的檔案上也不會給破解了,而且天然地抵禦了線性分析法和差分分析法的攻擊。其實底層原理還是夏農大神老師的一次一密,我只不過把他缺陷修補了(開心吶,到我發布原始碼時,世上還沒有像我這個演算法的原理。不知道是真沒有人發現,還是有高人知道了沒發表.。像我這個宇宙鈍胎也躋身於密碼行列。)。
原始碼**:
一種將傳統工具機主軸革命性公升級技術(德國)
一種將傳統工具機電主軸革命性的公升級,在原有不改變工具機配置的前提下可以提高傳統數控工具機電主軸的加工能力,可以從原來的0 24000rpm的加工範圍,擴充套件到0 100000rpm的超高轉速的加工,這主要得力於kaiste提供的解決方案 方案一 hsk63刀柄高速電主軸 4015 dc r hs...
一種快速簡潔的一致性雜湊演算法
在分布式系統路由分配上,一致性雜湊演算法有很大的優勢。在之前的文章中也講過原理。演算法容易理解,但是實現上要注意很多細節,虛節點加入也要消耗更多的儲存來維護對映關係。但是今天介紹的jump consistent hash是一種比較新穎的方法,簡短,記憶體消耗少。下面我們來詳細看看這個演算法。首先我們...
RAFT 尋找一種易於理解的一致性演算法(擴充套件版)
領導選舉 raft 演算法使用乙個隨機計時器來選舉領導者。這種方式只是在任何一致性演算法都必須實現的心跳機制上增加了一點機制。在解決衝突的時候會更加簡單快捷。成員關係調整 raft 使用一種共同一致的方法來處理集群成員變換的問題,在這種方法下,處於調整過程中的兩種不同的配置集群中大多數機器會有重疊,...