one-time pad implementation by me