Random string'i random olmayan string'e çeviren fonksiyon mümkün müdür?

NapsakLan

Hectopat
Katılım
6 Eylül 2022
Mesajlar
97
Çözümler
1
Öyle bir fonksiyon mümkün müdür ki aldığı random veya random olmayan herhangi bir string'i işleyip çıktı olarak random olmayan özel bir string versin. Özelden kastım hash fonksiyonu gibi düşünün. Her string'in farklı bir özel hash değeri olması gibi aldığı herhangi bir string'e özel bir string çıktı vermesini istiyorum. Ve bu fonksiyonun tersinin olmasını istiyorum. Örnek olarak:
f(bir_random_string) -> random_olmayan_unique_string
f^-1(random_olmayan_unique_string) -> bir_random_string

"Random felsefik bir şeydir. Random ne demek ki tartışıyoruz?" vs. diyen olursa kolmogorov complexity'e bakabilir.
 
Yüksek miktarda veri içeren bir veri tabanı ile beslerseniz mümkün. Random oluşan bir string değerini okunabilir bir cümleye çevirebilir :)
 
Bunun için kendiniz bir fonksiyon yazabilir (stringi tersten yazdırmak gibi), veya şifreleme algoritmalarına göz atabilirsiniz. En azından tersi bulunan fonksiyonların nasıl çalıştığını anlamanıza yardımcı olabilir.
 
Yüksek miktarda veri içeren bir veri tabanı ile beslerseniz eğer, random oluşan bir string değerini okunabilir bir cümleye çevirebilir :)
Random tanım gereği örüntüsü bulunmayan anlamına geliyor. Örüntü yoksa yüksek miktarda veri içeren bir veri tabanı ile beslememin anlamı nedir? Ne kastettiğini daha detaylı anlatır mısın?
Bunun için kendiniz bir fonksiyon yazabilir (stringi tersten yazdırmak gibi), veya şifreleme algoritmalarına göz atabilirsiniz. En azından tersi bulunan fonksiyonların nasıl çalıştığını anlamanıza yardımcı olabilir.
String'i tersten yazdırmayla sorumun alakasını göremedim. Modern şifreleme algoritmaları plaintext'i işleyip ciphertext'i çıktı olarak verirken aslında random olmayan bir veriyi(plaintext) pseudorandom veriye(ciphertext) çeviriyorlar. Ben ise random veya pseudorandom veya random olmayan herhangi bir string'i işleyip random olmayan unique bir string çıktısı versin istiyorum. Ve bu çıktıyı veren fonksiyonun tersinin de olmasını istiyorum.
 
Yanlış düşünüyorsunuz. Random üretilen bir değerin denk gelme ihtimali düşük olsa bile her zaman var. Makine öğrenmesi ile kolay bir şekilde cümleye çevirilebilir :)

Araştırın derim.
 
Yanlış düşünüyorsunuz. Random üretilen bir değerin denk gelme ihtimali düşük olsa bile her zaman var. Makine öğrenmesi ile kolay bir şekilde cümleye çevirilebilir :)

Araştırın derim.
Makine öğrenmesi verilen veri setinin örüntülerini inceliyor. Örüntüsü olmayan bir veri setiyle makine öğrenmesi kullanarak napmayı bekliyorsun? Nasıl bir verim umuyorsun? Kafanda ne olduğunu anlamaya çalışıyorum.
 
String'i tersten yazdırmayla sorumun alakasını göremedim.
String düz: random
String ters: random_olmayan_unique_string
şeklinde düşünebilirsiniz. Tekrardan ters çevirdiğinizde orijinal random metninizi elde edeceksiniz. Bu bir tersi olan fonksiyon örneği.
Modern şifreleme algoritmaları plaintext'i işleyip ciphertext'i çıktı olarak verirken aslında random olmayan bir veriyi(plaintext) pseudorandom veriye(ciphertext) çeviriyorlar. Ben ise random veya pseudorandom veya random olmayan herhangi bir string'i işleyip random olmayan unique bir string çıktısı versin istiyorum. Ve bu çıktıyı veren fonksiyonun tersinin de olmasını istiyorum.
Modern şifreleme algoritmaları herhangi bir veriyi (bytearray, plaintext vs) bir anahtar yardımıyla bir matematiksel işleme sokarak random olmayan bir unique bytearray çıktısı verir. Daha sonra aynı anahtarı kullanarak orijinal random string elde edilebilir. Bu da bir tersi olan fonksiyon örneğidir.
Bkn. AES crypt/decrypt
 
String düz: random
String ters: random_olmayan_unique_string
şeklinde düşünebilirsiniz. Tekrardan ters çevirdiğinizde orijinal random metninizi elde edeceksiniz. Bu bir tersi olan fonksiyon örneği.

Modern şifreleme algoritmaları herhangi bir veriyi (bytearray, plaintext vs) bir anahtar yardımıyla bir matematiksel işleme sokarak random olmayan bir unique bytearray çıktısı verir. Daha sonra aynı anahtarı kullanarak orijinal random string elde edilebilir. Bu da bir tersi olan fonksiyon örneğidir.
Bkn. AES crypt/decrypt
Ne kastettiğini daha iyi anladım. Ancak sorun şu ki şifrelemelerdeki olayı kendi soruma nasıl uyarlayabileceğimi anlayamadım. Random veya random olmayan bir string'i random olmayan başka bir string'e dönüştürmeye çalışırken şifrelemelerden nasıl ilham alabilirim? Örnek veriyorum:
x = ababababab (random olmayan bir string)
f(x) -> abcabcabcabc (random olmayan başka bir string)
f^-1(abcabcabcabc) -> x

veya
x = q4aXJqJ (random/pseudorandom bir string)
f(x) -> abbaabbaabba (random olmayan başka bir string)
f^-1(abbaabbaabba) -> x

Bunu modern şifrelemelerle nasıl ilişkilendireceğim? Modern şifrelemelerde encrypt/decrypt olayı var diye problemime nasıl uyarlayabileceğimi anladığım anlamına gelmiyor.
 
Ne kastettiğini daha iyi anladım. Ancak sorun şu ki şifrelemelerdeki olayı kendi soruma nasıl uyarlayabileceğimi anlayamadım. Random veya random olmayan bir string'i random olmayan başka bir string'e dönüştürmeye çalışırken şifrelemelerden nasıl ilham alabilirim? Örnek veriyorum:

x = q4aXJqJ (random/pseudorandom bir string)
f(x) -> abbaabbaabba (random olmayan başka bir string)
f^-1(abbaabbaabba) -> x
x = q4aXJqJ
aes_crypt(x) = abbaabbaabba
aes_decrypt(abbaabbaabba) = x
 

Technopat Haberler

Yeni konular

Yeni mesajlar

Geri
Yukarı