当前位置: 首页>>代码示例>>Java>>正文


Java CipherInputStream.close方法代码示例

本文整理汇总了Java中javax.crypto.CipherInputStream.close方法的典型用法代码示例。如果您正苦于以下问题:Java CipherInputStream.close方法的具体用法?Java CipherInputStream.close怎么用?Java CipherInputStream.close使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在javax.crypto.CipherInputStream的用法示例。


在下文中一共展示了CipherInputStream.close方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: gcm_suppressUnreadCorrupt

import javax.crypto.CipherInputStream; //导入方法依赖的package包/类
static void gcm_suppressUnreadCorrupt() throws Exception {
    Cipher c;
    byte[] read = new byte[200];

    System.out.println("Running supressUnreadCorrupt test");

    // Encrypt 100 bytes with AES/GCM/PKCS5Padding
    byte[] ct = encryptedText("GCM", 100);
    // Corrupt the encrypted message
    ct = corruptGCM(ct);
    // Create stream for decryption
    CipherInputStream in = getStream("GCM", ct);

    try {
        in.close();
        System.out.println("  Pass.");
    } catch (IOException e) {
        System.out.println("  Fail: " + e.getMessage());
        throw new RuntimeException(e.getCause());
    }
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:22,代码来源:CipherInputStreamExceptions.java

示例2: cbc_shortStream

import javax.crypto.CipherInputStream; //导入方法依赖的package包/类
static void cbc_shortStream() throws Exception {
    Cipher c;
    AlgorithmParameters params;
    byte[] read = new byte[200];

    System.out.println("Running cbc_shortStream");

    // Encrypt 97 byte with AES/CBC/PKCS5Padding
    byte[] ct = encryptedText("CBC", 97);
    // Create stream with only 96 bytes of encrypted data
    CipherInputStream in = getStream("CBC", ct, 96);

    try {
        int size = in.read(read);
        in.close();
        if (size != 80) {
            throw new RuntimeException("Fail: CipherInputStream.read() " +
                    "returned " + size + ". Should have been 80");
        }
        System.out.println("  Pass.");
    } catch (IOException e) {
        System.out.println("  Fail:  " + e.getMessage());
        throw new RuntimeException(e.getCause());
    }
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:26,代码来源:CipherInputStreamExceptions.java

示例3: cbc_shortRead400

import javax.crypto.CipherInputStream; //导入方法依赖的package包/类
static void cbc_shortRead400() throws Exception {
    System.out.println("Running cbc_shortRead400");

    // Encrypt 400 byte with AES/CBC/PKCS5Padding
    byte[] ct = encryptedText("CBC", 400);
    // Create stream with encrypted data
    CipherInputStream in = getStream("CBC", ct);

    try {
        in.read();
        in.close();
        System.out.println("  Pass.");
    } catch (IOException e) {
        System.out.println("  Fail:  " + e.getMessage());
        throw new RuntimeException(e.getCause());
    }
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:18,代码来源:CipherInputStreamExceptions.java

示例4: cbc_shortRead600

import javax.crypto.CipherInputStream; //导入方法依赖的package包/类
static void cbc_shortRead600() throws Exception {
    System.out.println("Running cbc_shortRead600");

    // Encrypt 600 byte with AES/CBC/PKCS5Padding
    byte[] ct = encryptedText("CBC", 600);
    // Create stream with encrypted data
    CipherInputStream in = getStream("CBC", ct);

    try {
        in.read();
        in.close();
        System.out.println("  Pass.");
    } catch (IOException e) {
        System.out.println("  Fail:  " + e.getMessage());
        throw new RuntimeException(e.getCause());
    }
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:18,代码来源:CipherInputStreamExceptions.java

示例5: encryptLarge

import javax.crypto.CipherInputStream; //导入方法依赖的package包/类
public static void encryptLarge(String password, File in, File out) throws Exception {
    SecretKeySpec skeySpec = new SecretKeySpec(getRawKey(password), "AES");
    Cipher cipher = Cipher.getInstance("AES/CTR/PKCS5Padding");
    cipher.init(Cipher.ENCRYPT_MODE, skeySpec);

    FileInputStream inputStream = new FileInputStream(in);
    FileOutputStream fileOutputStream = new FileOutputStream(out);

    int read;
    byte[] buffer = new byte[4096];

    CipherInputStream cis = new CipherInputStream(inputStream, cipher);

    while ((read = cis.read(buffer)) != -1) {
        fileOutputStream.write(buffer, 0, read);
    }
    fileOutputStream.close();
    cis.close();
    in.delete();
}
 
开发者ID:alepacheco,项目名称:AndroRW,代码行数:21,代码来源:Aes.java

示例6: decryptLarge

import javax.crypto.CipherInputStream; //导入方法依赖的package包/类
public static void decryptLarge(String password, File in, File out) throws Exception {
    SecretKeySpec skeySpec = new SecretKeySpec(getRawKey(password), "AES");
    Cipher cipher = Cipher.getInstance("AES/CTR/PKCS5Padding");
    cipher.init(Cipher.DECRYPT_MODE, skeySpec);

    FileInputStream inputStream = new FileInputStream(in);
    FileOutputStream fileOutputStream = new FileOutputStream(out);

    int read;
    byte[] buffer = new byte[4096];

    CipherInputStream cis = new CipherInputStream(inputStream, cipher);

    while ((read = cis.read(buffer)) != -1) {
        fileOutputStream.write(buffer, 0, read);
    }
    fileOutputStream.close();
    cis.close();
    in.delete();
}
 
开发者ID:alepacheco,项目名称:AndroRW,代码行数:21,代码来源:Aes.java

示例7: encrypt

import javax.crypto.CipherInputStream; //导入方法依赖的package包/类
public boolean encrypt(String file, String destFile,Key key) {
    try {
        Cipher cipher = Cipher.getInstance("DES");
        cipher.init(Cipher.ENCRYPT_MODE, key);
        InputStream is = new FileInputStream(file);
        OutputStream out = new FileOutputStream(destFile);
        CipherInputStream cis = new CipherInputStream(is, cipher);
        byte[] buffer = new byte[1024];
        int r;
        while ((r = cis.read(buffer)) > 0) {
            out.write(buffer, 0, r);
        }
        cis.close();
        is.close();
        out.close();
        return true;
    }catch (Exception e){
        e.printStackTrace();
        return false;
    }

}
 
开发者ID:tztztztztz,项目名称:bookish-meme,代码行数:23,代码来源:FileEncryptAndDecrypt.java

示例8: testInputStream

import javax.crypto.CipherInputStream; //导入方法依赖的package包/类
@Test
public void testInputStream() throws Exception {
	AES aes = new AES();
	String orig = "I'm a password, really";
	ByteArrayInputStream bais = new ByteArrayInputStream(orig.getBytes());
	CipherInputStream cis = aes.inputStream(bais, true);
	ByteArrayOutputStream baos = new ByteArrayOutputStream();
	Symm.base64.encode(cis, baos);
	cis.close();

	byte[] b64encrypted;
	System.out.println(new String(b64encrypted=baos.toByteArray()));
	
	
	baos.reset();
	CipherOutputStream cos = aes.outputStream(baos, false);
	Symm.base64.decode(new ByteArrayInputStream(b64encrypted),cos);
	cos.close();
	Assert.assertEquals(orig, new String(baos.toByteArray()));
}
 
开发者ID:att,项目名称:AAF,代码行数:21,代码来源:JU_AES.java

示例9: writeTo

import javax.crypto.CipherInputStream; //导入方法依赖的package包/类
@Override
public void writeTo(BufferedSink sink) throws IOException {
    //The only time this can cause issues is if the body has disappeared since construction. Don't worry about that, since
    //it'll get caught when we initialize.
    CipherInputStream cis = new CipherInputStream(new FileInputStream(file), cipher);
    try {
        StreamsUtil.writeFromInputToOutputUnmanaged(cis, sink.outputStream());
    } catch (InputIOException iioe) {
        //Here we want to retain the fundamental problem of the _input_ being responsible for the issue
        //so we can differentiate between bad reads and bad network
        throw iioe;
    } catch (OutputIOException oe) {
        //We want the original exception here.
        throw oe.getWrapped();
    } finally {
        cis.close();
    }
}
 
开发者ID:dimagi,项目名称:commcare-android,代码行数:19,代码来源:EncryptedFileBody.java

示例10: decode

import javax.crypto.CipherInputStream; //导入方法依赖的package包/类
public static byte[] decode(InputStream is, String pass) throws Exception
{
  Cipher c = Cipher.getInstance("DES");
  Key k = new SecretKeySpec(pass.getBytes(), "DES");
  c.init(Cipher.DECRYPT_MODE, k);

  ByteArrayOutputStream bos = new ByteArrayOutputStream();
  CipherInputStream cis = new CipherInputStream(is, c);

  for (int b; (b = cis.read()) != -1; b++) {
    bos.write(b);
  }

  cis.close();
  return bos.toByteArray();
}
 
开发者ID:mmeuters,项目名称:JCrypt,代码行数:17,代码来源:JDESCrypt.java

示例11: gcm_AEADBadTag

import javax.crypto.CipherInputStream; //导入方法依赖的package包/类
static void gcm_AEADBadTag() throws Exception {
    Cipher c;
    byte[] read = new byte[200];

    System.out.println("Running gcm_AEADBadTag");

    // Encrypt 100 bytes with AES/GCM/PKCS5Padding
    byte[] ct = encryptedText("GCM", 100);
    // Corrupt the encrypted message
    ct = corruptGCM(ct);
    // Create stream for decryption
    CipherInputStream in = getStream("GCM", ct);

    try {
        int size = in.read(read);
        throw new RuntimeException("Fail: CipherInputStream.read() " +
                "returned " + size + " and didn't throw an exception.");
    } catch (IOException e) {
        Throwable ec = e.getCause();
        if (ec instanceof AEADBadTagException) {
            System.out.println("  Pass.");
        } else {
            System.out.println("  Fail: " + ec.getMessage());
            throw new RuntimeException(ec);
        }
    } finally {
        in.close();
    }
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:30,代码来源:CipherInputStreamExceptions.java

示例12: gcm_shortReadAEAD

import javax.crypto.CipherInputStream; //导入方法依赖的package包/类
static void gcm_shortReadAEAD() throws Exception {
    Cipher c;
    byte[] read = new byte[100];

    System.out.println("Running gcm_shortReadAEAD");

    byte[] pt = new byte[600];
    pt[0] = 1;
    // Encrypt provided 600 bytes with AES/GCM/PKCS5Padding
    byte[] ct = encryptedText("GCM", pt);
    // Create stream for decryption
    CipherInputStream in = getStream("GCM", ct);

    int size = 0;
    try {
        size = in.read(read);
        in.close();
        if (read.length != 100) {
            throw new RuntimeException("Fail: read size = " + read.length +
                    "should be 100.");
        }
        if (read[0] != 1) {
            throw new RuntimeException("Fail: The decrypted text does " +
                    "not match the plaintext: '" + read[0] +"'");
        }
    } catch (IOException e) {
        System.out.println("  Fail: " + e.getMessage());
        throw new RuntimeException(e.getCause());
    }
    System.out.println("  Pass.");
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:32,代码来源:CipherInputStreamExceptions.java

示例13: encrypt

import javax.crypto.CipherInputStream; //导入方法依赖的package包/类
private static byte[] encrypt(byte[] key, byte[] IV, byte[] data) throws InvalidAlgorithmParameterException, InvalidKeyException, IOException
{
    SecretKey aesKey = new SecretKeySpec(key, 0, key.length, "AES");
    // Encrypt cipher
    Cipher encryptCipher = null;
    try {
        encryptCipher = Cipher.getInstance("AES/CBC/PKCS7Padding");
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }

    encryptCipher.init(Cipher.ENCRYPT_MODE, aesKey, new IvParameterSpec(IV));

    ByteArrayInputStream inStream = new ByteArrayInputStream(data);
    CipherInputStream cipherInputStream = new CipherInputStream(inStream, encryptCipher);

    byte[] buf = new byte[1024];
    int bytesRead;
    ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
    while ((bytesRead = cipherInputStream.read(buf)) > 0) {
        outputStream.write(buf, 0, bytesRead);
    }

    byte[] res = outputStream.toByteArray();

    cipherInputStream.close();
    inStream.close();
    outputStream.close();
    return res;
}
 
开发者ID:dc914337,项目名称:PSD-Android-App,代码行数:32,代码来源:BaseCrypto.java

示例14: decrypt

import javax.crypto.CipherInputStream; //导入方法依赖的package包/类
private static byte[] decrypt(byte[] key, byte[] IV, byte[] encryptedBytes) throws InvalidAlgorithmParameterException, InvalidKeyException, IOException
{
    SecretKey aesKey = new SecretKeySpec(key, 0, key.length, "AES");

    // Decrypt cipher
    Cipher decryptCipher = null;
    try {
        decryptCipher = Cipher.getInstance("AES/CBC/PKCS7Padding");
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }

    decryptCipher.init(Cipher.DECRYPT_MODE, aesKey, new IvParameterSpec(IV));

    // Decrypt

    ByteArrayInputStream inStream = new ByteArrayInputStream(encryptedBytes);
    CipherInputStream cipherInputStream = new CipherInputStream(inStream, decryptCipher);

    byte[] buf = new byte[1024];
    int bytesRead;
    ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
    while ((bytesRead = cipherInputStream.read(buf)) > 0) {
        outputStream.write(buf, 0, bytesRead);
    }

    byte[] res = outputStream.toByteArray();

    cipherInputStream.close();
    inStream.close();
    outputStream.close();
    return res;
}
 
开发者ID:dc914337,项目名称:PSD-Android-App,代码行数:35,代码来源:BaseCrypto.java

示例15: decode

import javax.crypto.CipherInputStream; //导入方法依赖的package包/类
public static byte[] decode(InputStream is, String pass) throws Exception {
    Cipher c = Cipher.getInstance("DES");
    Key k = new SecretKeySpec(pass.getBytes(), "DES");
    c.init(Cipher.DECRYPT_MODE, k);

    ByteArrayOutputStream bos = new ByteArrayOutputStream();
    CipherInputStream cis = new CipherInputStream(is, c);

    for (int b = 0; b != - 1; b = cis.read()) {
        bos.write(b);
    }
    cis.close();
    return bos.toByteArray();
}
 
开发者ID:NeuroBox3D,项目名称:NeuGen,代码行数:15,代码来源:KeyGenerator.java


注:本文中的javax.crypto.CipherInputStream.close方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。