Guest User

Untitled

a guest
May 27th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.43 KB | None | 0 0
  1. #!/usr/bin/env ruby
  2.  
  3. print "MESSAGE> "
  4. message = gets.gsub(/\s/, '').split(//)
  5.  
  6. print "PAD> "
  7. pad = gets.gsub(/\s/, '').split(//)
  8.  
  9. message.zip(pad) do |mc, pc|
  10. puts "#{mc} | #{pc} | #{'%2i' % (nm = mc[0] - ?a)} | #{'%2i' % (np = pc[0] - ?a)} | #{'%2i' % ((nm + np) % 26)} | #{(((nm + np) % 26) + ?a).chr}"
  11. end
  12.  
  13. cyphertext = message.zip(pad).collect do |m,p|
  14. (?a + (((m[0] - ?a) + (p[0] - ?a)) % 26)).chr
  15. end
  16.  
  17. puts "CYPHERTEXT: #{cyphertext}"
Add Comment
Please, Sign In to add comment