CouchDB 3.4 Strengthens Password Hashes |
Written by Kay Ewbank |
Thursday, 03 October 2024 |
CouchDB 3.41 has been released with stronger password hashes, a Lucene-based full text search implementation, and QuickJS as a JavaScript option. Apache CouchDB is an open source NoSQL document database that stores data in a schema-free JSON format. CouchDB uses its own replication protocol to keep JSON documents synchronized. CouchDB was originally developed by Damien Katz, and was then adopted as a successful Apache project. CouchDB comes with a developer-friendly query language, and optionally MapReduce for simple, efficient, and comprehensive data retrieval. The new search option, Nouveau, is a beta option. Apache describes Nouveau as a modern, from-the-ground-up implementation of Lucene-based full-text search. Apache Lucene is a high-performance, full-featured search engine library written entirely in Java. The next improvement is the addition of QuickJS as a JavaScript engine option. QuickJS is a small and embeddable Javascript engine that supports the ES2023 specification. The CouchDB team says QuickJS has a number of advantages over SpiderMonkey, the previous JavaScript engine. QuickJS is significantly smaller, and is built with CouchDB as opposed having to maintain a separate SpiderMonkey package for operating systems that don't support it (specifically, RedHat9). It also offers better sandboxing support, is between four and five times faster than SpiderMonkey, and uses a sixth of the memory per couchjs process. QuickJS can be built alongside SpiderMonkey and toggled on/off at runtime. The other change of note is an alteration to password hashing. This release introduces PBKDF2-SHA256 for password hashing, which is a stronger algorithm than the existing PBKDF2-SHA1 variant. The developers note that the change does mean that users upgrading to the new release would have resulted in them being unable to roll back to the previous version without locking out users that have had their password hashes automatically upgraded. In view of this, the hashing algorithm is disabled by default for existing user accounts, though new user accounts will make use of the stronger hashing algorithm so won't be able to downgrade. Another improvement is to Mango, CouchDB's MongoDB inspired query language interface. Mango provides a single HTTP API endpoint that accepts JSON bodies via HTTP POST. The improvement add keys-only covering indexes, which the CouchDB team says improves query response times for certain queries up to ten times. CouchDB 3.41 is available now.
More InformationRelated ArticlesCouchDB 3.2 Improves Replication Scheduler CouchDB Adds Live Shard Splitting CouchDB Adds Clustering Support To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.
Comments
or email your comment to: comments@i-programmer.info |