第三方应用怎么获取应用签名证书的hash值-鸿蒙开发者社区-51CTO.COM

第三方应用怎么获取应用签名证书的hash值

第三方应用怎么获取应用签名证书的hash值

HarmonyOS
2024-01-30 18:57:48
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
onedolph

三方应用可以通过bundleManager.getBundleInfoForSelf()获取自身的应用包信息,其中入参bundleFlags指定所返回的BundleInfo中所包含的信息。

参考代码如下:

import bundleManager from '@ohos.bundle.bundleManager'; 
import { BusinessError } from '@ohos.base'; 
import hilog from '@ohos.hilog'; 
let bundleFlags = bundleManager.BundleFlag.GET_BUNDLE_INFO_DEFAULT; 
try { 
    bundleManager.getBundleInfoForSelf(bundleFlags).then((data) => { 
        hilog.info(0x0000, 'testTag', 'getBundleInfoForSelf successfully. Data: %{public}s', JSON.stringify(data)); 
    //data里可以获取到signatureInfo,即应用的签名证书信息 
    }).catch((err: BusinessError) => { 
        hilog.error(0x0000, 'testTag', 'getBundleInfoForSelf failed. Cause: %{public}s', err.message); 
    }); 
} catch (err) { 
    let message = (err as BusinessError).message; 
    hilog.error(0x0000, 'testTag', 'getBundleInfoForSelf failed: %{public}s', message); 
}

signatureInfo.fingerprint是应用签名证书(.cer文件)的SHA256 hash值:

对于hash值,可使用加解密框架的hash算法,目前支持SHA1、SHA224、SHA256、SHA384、SHA512、MD5,参考代码如下:

let filePath = pathDir + "/test.txt"; 
Hash.hash(filePath, "sha256").then((str: string) => { 
  console.info("calculate file hash succeed:" + str); 
}).catch((err: BusinessError) => { 
  console.info("calculate file hash failed with error message: " + err.message + ", error code: " + err.code); 
});

参考链接

Hash.hash

分享
微博
QQ
微信
回复
2024-01-31 23:13:56
相关问题
如何获取应用签名证书hash
2427浏览 • 1回复 待解决
HarmonyOS 使用第三方应用打开
496浏览 • 1回复 待解决
HarmonyOS 第三方应用安装和卸载广播
938浏览 • 0回复 待解决
第三方怎么装鸿蒙系统?
5314浏览 • 1回复 待解决
第三方应用如何拿到蓝牙mac地址
856浏览 • 1回复 待解决
HarmonyOS 第三方应用自动化发布咨询
635浏览 • 1回复 待解决
HarmonyOS 第三方APP跳转
346浏览 • 1回复 待解决
OHPM包管理怎么安装第三方
5082浏览 • 1回复 待解决
开发第三方SDK如何编译?
14048浏览 • 2回复 待解决
HarmonyOS 如何加载第三方页面
273浏览 • 1回复 待解决
native交叉编译第三方
666浏览 • 1回复 待解决
HarmonyOS 依赖第三方库报错
495浏览 • 1回复 待解决
如何引入自己第三方”库
1077浏览 • 1回复 待解决
图片剪切第三方框架
593浏览 • 1回复 待解决
HarmonyOS如何移植第三方MCU?
9753浏览 • 1回复 待解决
HarmonyOS 如何启动第三方APP
455浏览 • 1回复 待解决
是否支持使用第三方webview内核
1616浏览 • 1回复 待解决
HarmonyOS 如何拉起第三方地图APP
454浏览 • 1回复 待解决
HarmonyOS 编译第三方大数库libgmp
533浏览 • 1回复 待解决
HarmonyOS支持第三方列表
1980浏览 • 1回复 待解决
HarmonyOS 引入第三方Har包问题
508浏览 • 1回复 待解决