簡體   English   中英

如何在一個范圍內生成每個可能的整數,而不會從同樣可逆的種子中重復

[英]How can I generate every possible integer in a range without repeats from a seeds that is also reversible

我一直在通過種子尋找大量的世代,但由於它的具體性,我一直在努力尋找我正在尋找的東西。 我認為導致問題的主要原因是我想要生成的數字的大小,例如......我想要它,這樣我就可以通過某種形式的種子或選擇性生成每個 5000 位長的數字輸入過程。 另一個問題是我希望能夠扭轉這個過程以了解我是如何到達那里的。 如果我有這個數字,我想知道什么輸入或什么種子會產生這個數字。 希望這是有道理的,我知道這是一個非常具體的問題。

對於這樣的問題,我會使用加密。 由於加密是一個一對一的過程,只要您使用唯一的輸入並保持相同的密鑰,那么輸出就可以保證是唯一的。 對於唯一輸入,加密數字 0、1、2、3,... 您需要通過添加前導零來擴展輸入,使其達到您需要的大小,足以滿足 5,000 個十進制數字的二進制等價物。

加密的輸出將是相同的大小。 只需將二進制輸出轉換回等效的十進制數。 可能有一些邊界情況剛好超過十進制和二進制邊界的限制; 在這些情況下,只需重新加密,直到結果在設定的限制內。 這是來自 Format Preserving 加密的循環行走技術。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM