Java 远程url文件sha256加密

Java 远程url文件sha256加密

java 复制代码
public static String getSHA256(String filePath) throws Exception {
        InputStream fis = null;
        URL url = new URL(filePath);
        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
        connection.setRequestMethod("GET");
        MessageDigest digest = MessageDigest.getInstance("SHA-256");
        byte[] buffer = new byte[1024];

        int responseCode = connection.getResponseCode();
        if (responseCode == HttpURLConnection.HTTP_OK) {
            fis = connection.getInputStream();
            int bytesRead;
            while ((bytesRead = fis.read(buffer)) != -1) {
                digest.update(buffer, 0, bytesRead);
            }
            fis.close();
        } else {
            throw new IOException("HTTP request failed with response code: " + responseCode);
        }

        byte[] sha256Bytes = digest.digest();

        StringBuilder sb = new StringBuilder();
        for (byte b : sha256Bytes) {
            sb.append(String.format("%02x", b));
        }

        String sha256 = sb.toString();
        return sha256;
    }
相关推荐
jjjxxxhhh12326 分钟前
RSA加密解密代码
开发语言·c++
重生之后端学习26 分钟前
236. 二叉树的最近公共祖先
java·数据结构·算法·职场和发展·深度优先
Sun_gentle33 分钟前
java.lang.RuntimeException: Could not load wrapper properties from ‘C:\Users\
java·开发语言·安卓
笨蛋不要掉眼泪44 分钟前
Nacos配置中心详解:核心用法、动态刷新与经典面试题解析
java·数据库·后端
键盘鼓手苏苏44 分钟前
Flutter for OpenHarmony:git 纯 Dart 实现的 Git 操作库(在应用内实现版本控制) 深度解析与鸿蒙适配指南
开发语言·git·flutter·华为·rust·自动化·harmonyos
橙露44 分钟前
面向对象编程思想:Java 与 Python 的封装、继承与多态对比分析
java·开发语言·python
上海合宙LuatOS1 小时前
LuatOS核心库API——【io】 io操作(扩展)
java·服务器·前端·网络·单片机·嵌入式硬件·物联网
ShineWinsu1 小时前
对于C++:模版进阶的解析
开发语言·c++·面试·笔试·求职·进阶·模版
追随者永远是胜利者1 小时前
(LeetCode-Hot100)42. 接雨水
java·算法·leetcode·职场和发展·go
lifallen1 小时前
点分治 (Centroid Decomposition)
java·数据结构·算法