1. Java / Говнокод #21897

    −1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    public static void main(String[] args)throws Exception
        {
            MessageDigest md = MessageDigest.getInstance("MD5");
            FileInputStream fis = new FileInputStream("c:\\loging.log");
    
            byte[] dataBytes = new byte[1024];
    
            int nread = 0;
            while ((nread = fis.read(dataBytes)) != -1) {
              md.update(dataBytes, 0, nread);
            };
            byte[] mdbytes = md.digest();
    
            //Конвернем byte в hex или так 
            StringBuffer sb = new StringBuffer();
            for (int i = 0; i < mdbytes.length; i++) {
              sb.append(Integer.toString((mdbytes[i] & 0xff) + 0x100, 16).substring(1));
            }
    
            System.out.println("Digest(in hex format):: " + sb.toString());
    
            //Или так
            StringBuffer hexString = new StringBuffer();
        	for (int i=0;i<mdbytes.length;i++) {
        		String hex=Integer.toHexString(0xff & mdbytes[i]);
       	     	if(hex.length()==1) hexString.append('0');
       	     	hexString.append(hex);
        	}
        	System.out.println("Digest(in hex format):: " + hexString.toString());
        }

    ебошим шифрование строки

    Запостил: vaergs, 25 Декабря 2016

    Комментарии (8) RSS

    • >MD5
      >шифрование
      Ответить
      • ТС просто опечатался - разумеется, это архивирование.
        Ответить
    • В чем говнокод?
      Ответить
      • Магические строки, числа, тупые имена переменных, максимально возможное множество исключений....продолжать?
        Ответить
        • Можешь не продолжать. Я вижу, что доебаться не к чему, поэтому придирки по мелочам.
          Ответить
          • StringBuffer вместо StringBuilder. Какой-то треш с подклейкой нулей и подстроками.

            З.Ы. К тому же, есть готовый конвертер в хексы и обратно:
            http://docs.oracle.com/javase/6/docs/api/javax/xml/bind/DatatypeConverter.html#printHexBinary(byte[])
            Ответить

    Добавить комментарий