По поводу первого ключа, комментировать отказываюсь, мой моск разрушен.
а что будет с тем кто будет ломать шифр? )
зачем 2 ключа?
как зачем? надежней! да и вобще первый ключ это даже не ключ... а так сказать основа алгоритма... а сам процесс шифрования зависит именно от второго ключа!
вот к примеру первый ключ(не сложный):
ВОобще если ключ генеритуется криптографически случайно, и длина его
равна длине шифруемых данных, то теоретически сломать такой алгоритм
можно разве что перехватом ключа или паяльником.
А алгоритм вообще говоря можно банальный при этом сделать, вроде
result = source XOR key
ВОт только толку от такого алгоритма... Это что, чтобы передать 10 Гб
информации, надо предварительно передать 10 Гб ключа? А как это
сделать безопасным образом? И если можно безопасно передать 10 Гб
ключа, то почему бы вместо этого не передать сразу 10 Гб исходной
информации?
Если же сделать какой-то универсальный длинный-длинный ключ, передать
его получателю заранее, и после этого шифровать им многократно
различные сообщения... То тут уже алгоритм становится уязвим. Скажем,
если взять одно из зашифрованных сообщений и каким-то образом
заполучить его в расшифрованном виде (скажем, с помощью паяльника) -
то анализируя их, реально вычислить ключ, и затем уже без проблем
расшифровывать последующие сообщения.
В общем, чушь какая-то получается. Алгоритм возможно и неломаемый, но
практически неприменимый.
Я так понимаю принцип в том, что заранее по максимально защищенному каналу (например из рук в руки) передается случайно сгенерированый длинный ключ (десятки гигабайт), например на дисках в броннированом кейсе.
А затем уже, когда защищенного канала между получателями нету, его и используют для передачи, причем одну часть ключа дважды не используют.
Читал что в свое время американцы нашли способ "взламывать" русских - в псевдослучайно генераторе нашли уязвимость
И если можно безопасно передать 10 Гб
ключа, то почему бы вместо этого не передать сразу 10 Гб исходной
информации?
Фишка в том что ключ можно передать когда есть такая возможсноть.
А когда понадобится передавать данные, возможности делать это защищенно уже может и не быть.
Ну если разом передать несколько болванок BlueRay с ключом, и потом
юзать куски ключа так чтоб они не повторялись - то вполне
работаспособное решение. Такое чисто брутальное
ладно... щас чуть занять... чуть попозже напишу... скорей всего сегодня... кстати если вы украдете и текст и шифротекст вы ключ не воссоздадите а перебирать все варианты и жизни не хватит т.к. тут два ключа сначало вам нужно будет случайно сгенерировать вот это
если ничего не получится заново и так до бесконечности, т.к. в алгоритме есть такая настройка "количество перешифровок", т.е. если установить 2 текст нужно расшифровывать с одим и темже ключем 2 раза!!! а если установить 10000? удачи в расшифровке ))