CogniCrypt for IntelliJ-based IDEs

Information

CogniCrypt is an intelligent open-source platform ensuring the secure usage of crypto components.

CogniCrypt for IntelliJ-based IDEs is developed by Fraunhofer IEM. It provides a static code analysis that allows developers to quickly identify misuses of cryptographic libraries.

Installation

  1. In the Settings/Preferences dialog (Ctrl+Alt+S), select Plugins.
  2. On the Plugins page, click the gear icon and then click Manage Plugin Repositories.
  3. In the Custom Plugin Repositories dialog, click The + icon and enter the URL: https://raw.githubusercontent.com/fraunhofer-iem/CogniCrypt4JetBuilds/master/updatePlugins.xml.
  4. Click OK in the dialog to save the list of plugin repositories.
  5. Search for CogniCrypt in the search box.
  6. Click Install and restart the IDE when asked.

Important Additional Setup

To assure you don't receive any StackOverflowError exceptions while the analysis is running you need to increase the stack size and allocated memory of the IDE:

  1. Go to Help > Edit custom VM options...
  2. Enter the lines:
-Xmx4g 
-Xss100m

-Xmx4g can be replaced with a custom GB number. Recommended are at least 4GB.

Getting Started

After installing CogniCrypt you can run an analysis for the opened IDE Project.

In the Main Menu open the Analyze menu and click Run CogniCrypt.

Documentation

For further information about the CogniCrypt Plugin please see the full documentation here.

Updates

The IDEs manage updates of CogniCrypt automatically. To check if a new update is available, regularly check the Plugins settings.

  1. In the Settings/Preferences dialog (Ctrl+Alt+S), select Plugins.
  2. Use the Installed tab to browse for CogniCrypt.
  3. Press the Update button and restart the IDE if required.

Terms of Use and License

This repository purposely comes without a LICENSE. Read here what this means.

Credits

This work is part of the research project "AppSecure.nrw - Security-by-Design of Java-based Applications". The project is funded by the European Regional Development Fund (ERDF-0801379).

AppSecure.nrw Logo

EFRE Logo Ziel2NRW Logo