{"id":1471,"date":"2016-10-02T19:01:30","date_gmt":"2016-10-02T17:01:30","guid":{"rendered":"http:\/\/blog.rabahi.net\/?page_id=1471"},"modified":"2017-05-10T17:24:39","modified_gmt":"2017-05-10T15:24:39","slug":"java-encryption","status":"publish","type":"page","link":"https:\/\/blog.rabahi.net\/?page_id=1471","title":{"rendered":"Java &#8211; Encryption"},"content":{"rendered":"<h1>Get list off all supported algorithms<\/h1>\n<pre lang=\"java\">\r\nList<String> algorithms = new ArrayList<>();\t\t\r\n\r\nProvider[] providers = Security.getProviders();\r\nfor (Provider provider : providers) {\r\n  Set<Service> services = provider.getServices();\r\n  for (Service s : services) {\r\n    if (\"MessageDigest\".equals(s.getType())) {\r\n      algorithms.add(s.getAlgorithm());\t\t       \r\n    }\r\n  }\r\n}\r\n\r\n\/\/ algoritms contains list of all supported algorithms.\r\n<\/pre>\n<h1>Encrypt string to md5<\/h1>\n<pre lang=\"java\">\r\nString algorithm=\"MD5\";\r\n\/\/ Initialize MessageDigest :\r\nMessageDigest md = MessageDigest.getInstance(algorithm);\r\n\r\n\/\/ add string bytes\r\nmd.update(\"Hello World\".getBytes());\r\nbyte[] digest = md.digest();\r\n\r\n\/\/ get encrypt value :\r\nStringBuilder sb = new StringBuilder();\r\nfor (byte b : digest) {\r\n  sb.append(String.format(\"%02x\", b & 0xff));\r\n}\r\nString result = sb.toString();\r\n<\/pre>\n<p>Note : The result must be b10a8db164e0754105b7a99be72e3fe5<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Get list off all supported algorithms List algorithms = new ArrayList(); Provider[] providers = Security.getProviders(); for (Provider provider : providers) { Set services = provider.getServices(); for (Service s : services) { if (&#8220;MessageDigest&#8221;.equals(s.getType())) { algorithms.add(s.getAlgorithm()); } } } \/\/ algoritms contains list of all supported algorithms. Encrypt string to md5 String algorithm=&#8221;MD5&#8243;; \/\/ Initialize MessageDigest [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":1538,"menu_order":3,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1471","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/blog.rabahi.net\/index.php?rest_route=\/wp\/v2\/pages\/1471","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.rabahi.net\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/blog.rabahi.net\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/blog.rabahi.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.rabahi.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1471"}],"version-history":[{"count":4,"href":"https:\/\/blog.rabahi.net\/index.php?rest_route=\/wp\/v2\/pages\/1471\/revisions"}],"predecessor-version":[{"id":1937,"href":"https:\/\/blog.rabahi.net\/index.php?rest_route=\/wp\/v2\/pages\/1471\/revisions\/1937"}],"up":[{"embeddable":true,"href":"https:\/\/blog.rabahi.net\/index.php?rest_route=\/wp\/v2\/pages\/1538"}],"wp:attachment":[{"href":"https:\/\/blog.rabahi.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1471"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}