//package sm;
//import java.math.BigInteger;
//
//import org.bouncycastle.crypto.InvalidCipherTextException;
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//import org.sm9hibe.SM9HIBE;
//import org.sm9hibe.structs.SN9HIBE_structs.SM9HIBESecretKey;
//
//import jj.tech.paolu.biz.webadmin.service.SharedService;
//
//public class SM9Test {
//	public static final Logger logger = LoggerFactory.getLogger(SharedService.class);
//	
//    private static BigInteger mainKeyRandomBigInt = new BigInteger("787ED7B8A51F3AB84E0A66003F32DA5C720B17ECA7137D39ABC66E3C80A892FF",16);
//    public static SM9HIBE sm9HIBE =  SM9HIBE.getInstance(10, mainKeyRandomBigInt);
//    
//    
//    
//    public static SM9HIBESecretKey getAdminKey(Long orgid,  Long userid) {
//    	SM9HIBESecretKey secretKey_1 = sm9HIBE.level1KeyGen(orgid.toString(), BigInteger.valueOf(orgid));
//    	String[] id_level_2 = {orgid.toString(), userid.toString()};
//    	SM9HIBESecretKey secretKey_2 = sm9HIBE.keyGen(secretKey_1, id_level_2, BigInteger.valueOf(userid));
//    	return secretKey_2;
//    }
//    
//    public static byte[]  keyToBytes(SM9HIBESecretKey key) {
//    	return sm9HIBE.secretKey2BytesArray(key);
//    }
//    
//    
//    public static byte[]  encrypt(Long orgid,  Long userid, byte[] source) {
//    	try {
//    		String[] id_level_2 = {orgid.toString(), userid.toString()};
//			return sm9HIBE.encrypt(id_level_2, source);
//		} catch (InvalidCipherTextException e) {
//			e.printStackTrace();
//			return null;
//		}
//    }
//    
//    public static byte[]  decrypt(Long orgid,  Long userid, SM9HIBESecretKey key, byte[] cipherBytes) {
//    	try {
//    		String[] id_level_2 = {orgid.toString(), userid.toString()};
//			return sm9HIBE.decrypt(key, id_level_2,cipherBytes);
//		} catch (InvalidCipherTextException e) {
//			e.printStackTrace();
//			return null;
//		}
//    }
//    
//   
//
//
//}
