Перевод из десятичной в восьмеричную

Такие же повторения случаются при многократном шифровании шифром Виженера, если не менять ключ на каждой итерации. Например, пусть будет текст "TheCalligrapher", а ключ "meow". Будем шифровать этот текст, а потом шифровать полученный результат и так много раз повторять эту операцию. Заметьте, что буду использовать только операцию шифровки (без самой дешифровки). Ключ не меняю.

TheCalligrapher
FlsYmpzesvoltif
RpgUytnaezchfmt
DtuQkxbwqdqdrqh
PxiMwbpschezduv
BbwIifdoolsvpyj
NfkEujrkapgrbcx
ZjyAgnfgmtunngl
LnmWsrtcyxijzkz
XraSevhykbwflon
JvoOqzvuwfkbxsb
VzcKcdjqijyxjwp
HdqGohxmunmtvad
TheCalligrapher
FlsYmpzesvoltif

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

А вот если менять ключ на каждой итерации, то тогда это усилит шифровку, увеличивая длину конечного ключа, но не всегда.
Например, если первый ключ имеет длину 3, а новый ключ на второй итерации 4, то длина ключа становится 12 (типа, будто первоначальный текст был единожды шифрован ключом длины 12).
С другой стороны, если длина первого ключа 4, а второго тоже 4, то это никак не усиливает шифр. Длина ключа остается 4.
Одним слово, длина конечного ключа равна НОК длин всех ключей.
Таким образом, текст можно шифровать поочередно тремя ключами длины 3, 4 и 5. В итоге выйдет, что мол мы зашифровали текст ключом длиной 60 (lcm(3,4,5) = 60). Ведь, легче запомнить три коротких ключа, нежели какой-то ключ длиной 60 символов.

1