Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package com.nkapps.billing.services; import java.security.Provider; import java.security.Security; import org.bouncycastle.jce.provider.BouncyCastleProvider; import org.springframework.stereotype.Service; /** * * @author nuraddin */ @Service("providerFactory") public class ProviderFactoryImpl implements ProviderFactory { private Provider provider = null; @Override public Provider getProvider() { if (provider != null) { return provider; } provider = Security.getProvider("BC"); if (provider == null) { BouncyCastleProvider bcp = new BouncyCastleProvider(); // configure fake provider Security.addProvider(bcp); provider = bcp; } return provider; } }