This project aims to apply JavaMop, a Java implementation of Monitoring-Oriented Programming, to verify the correct usage of cryptographic libraries
- Cipher
- HMACParameterSpec
- Mac
- MessageDigest
- KeyGenerator
- KeyManagerFactory
- KeyStore
- KeyPair
- KeyPairGenerator
- SecretKey
- SecretKeySpec
- SecureRandom
- Signature
- SSLContext
- TrustManagerFactory
- Install AspectJ locally
$
- create a directory to hold the projects
$ mkdir projects
$ cd projects
- clone and build the rv-monitor and java-mop projects
$ git clone https://github.com/PAMunb/rv-monitor.git
$ cd rv-monitor
$ git checkout statistics-1.4
$ mvn clean package install -DskipTests
$ cd ..
$ git clone https://github.com/PAMunb/javamop.git
$ cd javamop
$ git checkout statistics-4.0
$ mvn clean package install
$ cd ..
- clone the maven plugin and build it
$ git clone https://github.com/PAMunb/mop-maven-plugin.git
$ cd mop-maven-plugin
$ mvn compile package install
- clone this repository and execute the test cases
$ mvn test
- setup the classpath
$ source ./config.sh