• 大小: 36KB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2021-06-18
  • 语言: Java
  • 标签: 加密解密  java  

资源简介

这是本人完成的课程设计,内容是用java语言实现对文件的加密解密操作,算法采用的是3DES

资源截图

代码片段和文件信息

package net.sourceforge.jfilecrypt;
//Download to http://www.codefans.net
//~--- JDK imports ------------------------------------------------------------

import java.awt.*;
import java.awt.event.*;

import java.io.*;

import java.security.*;

import java.util.Enumeration;
import java.util.Properties;
import java.util.Vector;

import java.util.zip.*;

import javax.crypto.*;
import javax.crypto.spec.*;

import javax.swing.*;
import javax.swing.event.*;

//~--- classes ----------------------------------------------------------------

public class jFileCryptframe extends Jframe {
    private static final long serialVersionUID = 1L;
    
    private JButton        btChoose = new JButton();
    private JProgressBar   pbCryptProgress = new JProgressBar();
    private JPasswordField pfPassword = new JPasswordField();
    private JLabel         lbAlgorithm = new JLabel();
    private JLabel         lbSource = new JLabel();
    private JTextField     tfSourceFile = new JTextField();
    private JLabel         lbPassword = new JLabel();
    private JComboBox      cmbAlgorithm = new JComboBox();
    private JComboBox      cmbCompressionLevel = new JComboBox();
    private JButton        btDecrypt = new JButton();
    private JButton        btEncrypt = new JButton();
    private JFileChooser   fchooser = new JFileChooser();
    private JCheckBox      chbUseCompression = new JCheckBox();
    
    private Properties prop = new Properties();
    private long read = 0;
    private int start_for_entry_path = 0;
    private String dir_for_encrypted =““;
    private long size_all_files = 0;
    
    //~--- constructors -------------------------------------------------------
    /**
     * This is the main-constructor. It calls the @see jbinit() method.
     */
    
    public jFileCryptframe() {
        super();
        try {
            jbInit();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    //~--- methods ------------------------------------------------------------

    private void decrypt(final File f) {
        if(f.isDirectory()) {
            File[] files = f.listFiles();
            for(int i = 0; i                decrypt(files[i]);
            }
        } else {
        new Thread() {
            public void run() {
                try {
                    String kind = (String) cmbAlgorithm.getSelectedItem(); // Which algorithm?
                    int index = kind.indexOf(“(“);
                    kind = kind.substring(0 index);

                    Cipher c = Cipher.getInstance(kind);
                    Key k = new SecretKeySpec(
                        new String(pfPassword.getPassword()).getBytes() kind);
                    
                    c.init(Cipher.DECRYPT_MODE k);

                    String filename = f.getCanonicalPath();

                    if(filename.endsWith(prop.getProperty(kind))) {
                        filename = filename.substring(
                            

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2014-05-29 23:44  很强的Java加密解密算法源码\
     文件          48  2014-05-14 22:23  很强的Java加密解密算法源码\JAVA资料_JAVA论坛_软学源JAVA学习社区.url
     目录           0  2008-12-14 18:10  很强的Java加密解密算法源码\net\
     目录           0  2008-12-14 18:10  很强的Java加密解密算法源码\net\sourceforge\
     目录           0  2008-12-14 18:10  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\
     文件        4007  2006-09-21 15:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe$1.class
     文件        1117  2006-09-21 15:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe$10.class
     文件        5180  2006-09-21 15:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe$11.class
     文件        1121  2006-09-21 15:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe$12.class
     文件        1115  2006-09-21 15:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe$2.class
     文件        3691  2006-09-21 15:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe$3.class
     文件        1115  2006-09-21 15:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe$4.class
     文件         860  2006-09-21 15:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe$5.class
     文件         860  2006-09-21 15:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe$6.class
     文件         869  2006-09-21 15:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe$7.class
     文件         861  2006-09-21 15:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe$8.class
     文件        4065  2006-09-21 15:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe$9.class
     文件         770  2006-09-21 15:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe$MyOutputStream.class
     文件       13189  2006-09-21 15:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe.class
     文件       23783  2008-12-14 18:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe.java
     文件        2014  2006-09-21 15:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe_AboutBoxPanel1.class
     文件        2505  2006-01-08 11:02  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptframe_AboutBoxPanel1.java
     文件        1363  2006-09-21 15:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptMain.class
     文件        1196  2008-12-14 18:09  很强的Java加密解密算法源码\net\sourceforge\jfilecrypt\jFileCryptMain.java
     文件         387  2014-05-14 22:26  很强的Java加密解密算法源码\www.084210.com.txt

评论

共有 条评论