• Posted: 2017-05-03
  • Author: zzz
  • Posted in release

0.9.30 contains an upgrade to Jetty 9 and Tomcat 8. The previous versions are no longer supported, and are not available in the upcoming Debian Stretch and Ubuntu Zesty releases.

The router will migrate the jetty.xml configuration file for each Jetty website to the new Jetty 9 setup. This should work for recent, unmodified configurations but may not work for modified or very old setups. Verify that your Jetty website works after upgrading, and contact us on IRC if you need assistance.

Several plugins are not compatible with Jetty 9 and must be updated. The following plugins have been updated to work with 0.9.30, and your router should update them after restart: i2pbote 0.4.6; zzzot 0.15.0.

The following plugins (with current versions listed) will not work with 0.9.30. Contact the appropriate plugin developer for the status of new versions: BwSchedule 0.0.36; i2pcontrol 0.11.

This release also supports migration of old (2014 and earlier) DSA-SHA1 hidden services to the more-secure EdDSA signature type. See http://zzz.i2p/topics/2271 for further information, including a guide and FAQ.

Note: On non-Android ARM platforms such as the Raspberry Pi, the blockfile database will upgrade on restart, which may take several minutes. Please be patient.

As usual, we recommend that you update to this release. The best way to maintain security and help the network is to run the latest release.



  • Jetty 9, Tomcat 8
  • Stretch / Zesty support
  • Migration support for DSA-SHA1 hidden services
  • ARM (non-Android) router signature type migration
  • ARM (non-Android) blockfile format migration
  • Introducer expiration (proposal 133)

Bug Fixes

  • Fix disappearing i2psnark start button
  • Fix saving of libjcpuid.jnilib file on Macs
  • Fix fallback to 'none' architecture for jbigi
  • Fixes for multiple destinations in SusiDNS
  • Fix config directory location in Gentoo
  • Fix rapid firewalled/not-firewalled transitions
  • Fix startup crash on very old Android platforms
  • Fixes for advanced authentication strings in i2ptunnel
  • Fix exception caused by corrupt stored i2psnark DHT data
  • Speed up writes of i2psnark files at shutdown


  • Recognize AMD Ryzen processor
  • Support for new i2psnark-rpc remote plugin
  • Build addressbook as a jar, not a webapp
  • Support client registration in app context
  • Add support for i2psnark-rpc plugin
  • Adjust thresholds for probabalistic throttling on slow platforms
  • Add reset() to I2PSocket API
  • Add date parameter to subscription authentication strings
  • Add bash completion scripts to Debian packages
  • Translation updates
  • Update GeoIP data (new installs and PPA only)

Full list of fixed bugs

SHA256 Checksums:

1d037f4a03f00948b454c7e026617cab86fe2eeef9f87a9a7925f94350a11fd2  i2pinstall_0.9.30_windows.exe
319421c892a12c36710ad71558927c844da08ea4e4d1c3ee69fc6be2cecce92e  i2pinstall_0.9.30.jar
fa18a31c56ce9dbce492d800fda8c947612199427f64f544b81e290dde1fce8f  i2psource_0.9.30.tar.bz2
072ef8cfe9990715a130567f34b6083a51374099d15e419a041c152a4654ef73  i2pupdate_0.9.30.zip
31f07352eedf92df6d7912211ce7a1603864817333f3c1277413d4b5fd0fc3ca  i2pupdate.su3