creating stream-based OTP system