久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

為什么 java.security.NoSuchProviderException 沒有這樣的

Why java.security.NoSuchProviderException No such provider: BC?(為什么 java.security.NoSuchProviderException 沒有這樣的提供者:BC?)
本文介紹了為什么 java.security.NoSuchProviderException 沒有這樣的提供者:BC?的處理方法,對(duì)大家解決問題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!

問題描述

jar (bcprov-jdk16-145.jar) 已添加到項(xiàng)目中,Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider()) 已添加到類,并且 BouncyCastleProvider.PROVIDER_NAME 確實(shí)返回BC",但 AesFileIo.writeFile() 仍然拋出 java.security.NoSuchProviderException No such provider: BC.有什么想法嗎?

The jar (bcprov-jdk16-145.jar) has been added to the project, Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider()) has been added to the class, and BouncyCastleProvider.PROVIDER_NAME does return "BC" but AesFileIo.writeFile() still throws java.security.NoSuchProviderException No such provider: BC. Any ideas?

import java.io.FileOutputStream;
import java.io.InputStreamReader;
import java.io.ObjectOutputStream;
import javax.crypto.Cipher;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
import org.bouncycastle.jce.provider.BouncyCastleProvider;

public class AesFileIo {

    private static final String AES_ALGORITHM = "AES/CTR/NoPadding";
    private static final String PROVIDER = BouncyCastleProvider.PROVIDER_NAME;
    private static final byte[] AES_KEY_128 = { // Hard coded for now
        78, -90, 42, 70, -5, 20, -114, 103,
        -99, -25, 76, 95, -85, 94, 57, 54};
    private static final byte[] IV = { // Hard coded for now
        -85, -67, -5, 88, 28, 49, 49, 85,
        114, 83, -40, 119, -65, 91, 76, 108};
    private static final SecretKeySpec secretKeySpec =
            new SecretKeySpec(AES_KEY_128, "AES");
    private static final IvParameterSpec ivSpec = new IvParameterSpec(IV);

    public void AesFileIo() {
        Security.addProvider(new org.bouncycastle.jce.provider
                .BouncyCastleProvider());
    }

    public void writeFile(String fileName, String theFile) {
        try {
            Cipher cipher = Cipher.getInstance(AES_ALGORITHM, PROVIDER);
            cipher.init(Cipher.ENCRYPT_MODE, secretKeySpec, ivSpec);
            byte[] encrypted = cipher.doFinal(theFile.getBytes());
            ObjectOutputStream os = new ObjectOutputStream(
                new FileOutputStream(fileName));
            os.write(encrypted);
            os.flush();
            os.close();
        } catch (Exception e) {
            StackTraceElement se = new Exception().getStackTrace()[0];
            System.err.println(se.getFileName() + " " + se.getLineNumber()
                    + " " + e);
        }
    }
}

推薦答案

我對(duì)Android sdk不是很熟悉,但是android-sdk好像是自帶BouncyCastle 提供程序已添加到安全性中.

Im not very familiar with the Android sdk, but it seems that the android-sdk comes with the BouncyCastle provider already added to the security.

在PC環(huán)境中你要做的就是手動(dòng)添加,

What you will have to do in the PC environment is just add it manually,

Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());

如果您有權(quán)訪問 policy 文件,只需添加如下條目:

if you have access to the policy file, just add an entry like:

security.provider.5=org.bouncycastle.jce.provider.BouncyCastleProvider 

注意 .5 它等于已添加的提供程序的序號(hào).

Notice the .5 it is equal to a sequential number of the already added providers.

這篇關(guān)于為什么 java.security.NoSuchProviderException 沒有這樣的提供者:BC?的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

How to wrap text around components in a JTextPane?(如何在 JTextPane 中的組件周圍環(huán)繞文本?)
MyBatis, how to get the auto generated key of an insert? [MySql](MyBatis,如何獲取插入的自動(dòng)生成密鑰?[MySql])
Inserting to Oracle Nested Table in Java(在 Java 中插入 Oracle 嵌套表)
Java: How to insert CLOB into oracle database(Java:如何將 CLOB 插入 oracle 數(shù)據(jù)庫)
Why does Spring-data-jdbc not save my Car object?(為什么 Spring-data-jdbc 不保存我的 Car 對(duì)象?)
Use threading to process file chunk by chunk(使用線程逐塊處理文件)
主站蜘蛛池模板: 日韩精品亚洲专区在线观看 | 午夜av免费 | 国产午夜精品一区二区三区 | 免费观看羞羞视频网站 | 欧美中文一区 | 亚洲成人综合社区 | 羞羞视频免费观看入口 | 欧美伊人久久久久久久久影院 | 国产乱码精品一区二区三区忘忧草 | 麻豆91精品91久久久 | 无码日韩精品一区二区免费 | 欧美男人亚洲天堂 | 99久久国产 | 一级欧美日韩 | 国产精品一区三区 | 成人欧美一区二区三区在线播放 | 欧美日韩国产高清视频 | 亚洲精品国产综合区久久久久久久 | 在线免费观看黄色av | 久久午夜精品 | 亚洲97| 日韩成人在线观看 | 九色91视频 | 激情六月天 | 黄色片免费 | 免费观看一级毛片 | 国产欧美日韩综合精品一区二区 | 日韩一级精品视频在线观看 | 久久综合狠狠综合久久综合88 | 欧美日韩久久精品 | 91免费观看国产 | 日韩1区2区 | 午夜影院视频 | 日本一级淫片免费啪啪3 | 日韩av一区二区在线观看 | 欧美婷婷 | 亚洲精品一区二 | 精品成人佐山爱一区二区 | 欧美日韩国产精品一区 | 欧美日韩激情 | 国产女人与拘做受免费视频 |