# Why the lock into the CBC cypher Mode?

**URL:** <https://discuss.zetetic.net/t/why-the-lock-into-the-cbc-cypher-mode/2052>\
**Category:** SQLCipher\
**Created:** [March 24, 2017, 5:35am UTC](https://discuss.zetetic.net/t/why-the-lock-into-the-cbc-cypher-mode/2052 "2017-03-24T05:35:14Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![fedorareis](https://sea2.discourse-cdn.com/flex016/user_avatar/discuss.zetetic.net/fedorareis/32/536_2.png) [@fedorareis](https://discuss.zetetic.net/u/fedorareis)\
**Post date:** [March 24, 2017, 5:35am UTC](https://discuss.zetetic.net/t/why-the-lock-into-the-cbc-cypher-mode/2052/1 "2017-03-24T05:35:15Z")

</div>

Forgive me if this has been asked already. I poked around a bit and didn’t see anything addressing this. I am curious as to why CBC is the default (and now only) cypher mode? Especially when there are other modes that are just as good if not better.

---

<div class="post-metadata">

**Author:** ![sjlombardo](https://sea2.discourse-cdn.com/flex016/user_avatar/discuss.zetetic.net/sjlombardo/32/3_2.png) [@sjlombardo](https://discuss.zetetic.net/u/sjlombardo)\
**Post date:** [March 24, 2017, 2:39pm UTC](https://discuss.zetetic.net/t/why-the-lock-into-the-cbc-cypher-mode/2052/2 "2017-03-24T14:39:51Z")

</div>

Hello @fedorareis - thanks for your interest in SQLCipher. For much of SQLCipher’s history OpenSSL 0.9.x was widely distributed and used on target platforms where SQLCipher would be dynamically linked. CBC was one of the only reliably available modes that provided a reasonable level of security. Authentication (i.e. EtM HMAC) is already handled separately in SQLCipher, so using an authenticated mode is not strictly required. Furthermore, given the way SQLCipher is typically used, (e.g. small pages / database chunks which are separately accessed on demand), parallel operation isn’t a strict requirement either. As a result, CBC provides a good mix of security and compatibility/interoperability. This of course may change in the future, though we try not to make changes to default settings outside of major version number changes with compelling justification.
