From: Alexandre Alex Date: 2009-04-28T00:19:18+09:00 Subject: Legacy encryption function... Hello everyone, I have an old Java authentication web service that I must use in my rails development. The service takes a username and an encrypted password. I'm having trouble reproducing the same encryption algorithm. Here is the Java encryption function: public static String digest(String text) { MessageDigest mDigest = null; try { mDigest = MessageDigest.getInstance("SHA"); mDigest.update(text.toUpperCase().getBytes("UTF-8")); } catch (NoSuchAlgorithmException nsae) { nsae.printStackTrace(); } catch (UnsupportedEncodingException uee) { uee.printStackTrace(); } byte[] raw = mDigest.digest(); return new BASE64Encoder().encode(raw); } Here is the Ruby encryption function: ... require 'digest/sha1' Base64.encode64(Digest::SHA1.hexdigest('ruby')) ... Now here is the resulting String calling the Java function with the string 'ruby': "oJtN1kHfQdCCLFN7ATWgAxIH6bc=" Here is what I get with my Ruby function for the same string: "MThlNDBlMTQwMWVlZjY3ZTFhZTY5ZWZhYjA5YWZiNzFmODdmZmI4MQ==\n" So, anybody knows what I'm doing wrong? -- Posted via http://www.ruby-forum.com/.