Общая идея правильная - мы так в школе в "разведчиков" играли :) Но тут возникает одна проблема - однокласснику ключ передать не проблема :) А как быть, если чел от Вас за тыщи км?
Нет, конечно можно вот так:
"...— Только не открытым, — насторожилась Юлька. — Закодируй как-нибудь.
Риггельд некоторое время молчал, вычисляя.
— Рома, — сказал он. — Твой день рожденья. Сложи месяц и число. Умножь
на десять. Вычти… э-э-э… Рыцари скольки островов, помнишь?..."
(С) Владимир Васильев "Смерть или слава"
Но если человек незнакомый - вряд ли такой метод сработает. Поэтому было придумано асимметричное шифрование - когда шифруется одним ключом, а расшифровывается другим. При этом ключ, применяемый для шифрования, можно безопасно передавать как угодно - его знание не дает возможности расшифровать сообщение.
Так что, несмотря на то, движемся в верном направлении, идею нужно пересмотреть :)