Skip to content

karsany/file-integrity-check

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

File Integrity Checker for JAVA

Extendable file integrity checker for JAVA.

How to install in your project?

Maven repo:

<repositories>
    <repository>
        <id>karsany-repo</id>
        <name>karsany Repository</name>
        <url>http://maven.karsany.hu/maven/</url>
    </repository>
</repositories>

Maven dependency:

    <dependency>
        <groupId>hu.karsany</groupId>
        <artifactId>file-integrity-check</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>

How to use it?

// example logger for various events
final IntegrityCheckListener integrityCheckListener = new IntegrityCheckListener() {
	@Override
	public void newFile(IntegrityCheckedFile integrityCheckedFile) {
		System.out.println("New file: " + integrityCheckedFile.file().getAbsolutePath() + " " + integrityCheckedFile.hash());
	}

	public void hashChanged(IntegrityCheckedFile integrityCheckedFile, String oldHash) {
		System.out.println("Hash Changed: " + integrityCheckedFile.file().getAbsolutePath() + " from: " + oldHash + " to: " + integrityCheckedFile.hash());
	}

	public void hashUnchanged(IntegrityCheckedFile integrityCheckedFile) {
		System.out.println("Hash OK: " + integrityCheckedFile.file().getAbsolutePath());
	}
};

// digest strategy - use the SaltedSha256DigestStrategy or implement your own
final DigestStrategy digest = new SaltedSha256DigestStrategy("THIS_IS_A_SALT_FOR_THE_HASH");

// integrity database interfae - use the PropertiesIntegrityDatabase or implement your own
final IntegrityDatabase integrityDB = new PropertiesFileIntegrityDatabase(new File("check.properties"));

// init the file integrity check
final FileIntegrityCheck fileIntegrityCheck = new FileIntegrityCheck(integrityCheckListener, digest, integrityDB);

// check the file, as you want
fileIntegrityCheck.check(new File("pom.xml"));

About

File Integrity Check tool in Java

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages