Bạn dường như đã hiểu nhầm chìa khóa là gì.
Trong bối cảnh mã hóa đối xứng, khóa là một bí mật được chia sẻ : một cái gì đó được cả người gửi và người nhận biết. Đối với OTP, khóa là toàn bộ phần đệm và nếu hai người muốn mã hóa một số tin nhắn bằng OTP, họ phải đảm bảo trước rằng họ có một phần đệm đủ dài để làm điều đó.
Đối với OTP "hiệu quả" được đề xuất của bạn, chìa khóa là hạt giống PRNG: cả hai bên phải đảm bảo trước rằng họ biết điều đó. Sau đó, cả hai đều khởi tạo PRNG với cùng một hạt giống và nó được đảm bảo tạo ra cùng một chuỗi các số "ngẫu nhiên" cho mỗi số đó.
Tuy nhiên, lưu ý rằng đây là một sự suy yếu lớn, lớn của OTP. Một OTP thực tế mang lại sự bảo mật hoàn hảo, miễn là phần đệm được giữ bí mật. Nếu bạn chặn tin nhắn 17 ký tự
nsmklmfmwnfmngner
bạn không có kiến thức về việc đó là
maketrumpthepotus
được mã hóa bằng một pad, hoặc
ensureclintonwins
được mã hóa với một pad khác nhau. Hoặc là
kittensarethebest
hoặc nghĩa đen bất cứ điều gì khác. Tuy nhiên, sử dụng bảng giả ngẫu nhiên có nghĩa là chỉ có một số bảng nhất định là có thể (có thể không có khóa nào mã hóa thông điệp mèo con thành "nsmklmfmwnfmngner", vì vậy bạn có thể loại trừ điều đó). Bất cứ ai biết thuật toán PRNG đều có thể bắt đầu đoán các khóa để cố gắng giải mã tin nhắn. Bất cứ ai nắm bắt được một số vật liệu pad có thể bắt đầu cố gắng đảo ngược kỹ thuật PRNG. Bất cứ ai chụp tin nhắn được mã hóa đều có thể bắt đầu thử tương tự.
Bạn thực sự không nên gọi nó là OTP trừ khi tài liệu chính dài bằng tin nhắn. Đề xuất của bạn về việc sử dụng PRNG chỉ là một cypher stream chung.