Minimal icudt46l.dat file for SQLCipher

401 views
Skip to first unread message

Thomas Harning

unread,
Sep 30, 2013, 2:11:43 PM9/30/13
to sqlc...@googlegroups.com
At the bottom of the SQLCipher for Android page there is an option to generate an icudt46l.dat file for use with SQLCipher... what is the minimal setup you can use?

One of the main items I think that involve ICU is using it for Collation and maybe the FTS for word separators. If I do not use any of these features, what is the minimal data file I can get away with?

Nick Parker

unread,
Sep 30, 2013, 2:40:59 PM9/30/13
to sqlc...@googlegroups.com
Hi Thomas,

I believe you are referring to the ICU Data Library Customizer [1]. We
haven't done much in terms of using customized dat files, however there
are various settings aside from the collation that you might consider
removing; much of it depends on the needs of your application.

1. http://apps.icu-project.org/datacustom/ICUData46.html
> --
>
> ---
> You received this message because you are subscribed to the Google
> Groups "SQLCipher Users" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to sqlcipher+...@googlegroups.com.
> For more options, visit https://groups.google.com/groups/opt_out.

--
Nick Parker

Jay, Jayavasanthan John

unread,
Oct 1, 2013, 3:31:53 AM10/1/13
to sqlc...@googlegroups.com
I would certainly appreciate a minimal sized ICU Data Library file based on features supported for download from SQLCipher itself. Or a Tool to generate a compact file, as this would let us control the features used by us with SQLCipher. Certainly the tool from ICU project doesn't provide us the same context, hence the need.

Best Regards,
Jay
first me then home
first home then country
first country then world
fools always read inverse

Stephen Lombardo

unread,
Oct 1, 2013, 10:36:17 AM10/1/13
to sqlc...@googlegroups.com
Hello Jay,

ICU is not a dependency for any SQLCipher internals, but it is used by the Android compatibility wrapper library. The core SQLCipher library doesn't use it internally for any encryption functionality. Strictly speaking, you could go to the ICU tool, uncheck everything except base data, and it would meet the dependency for the library to load.

However, the contents of the ICU data file *will* affect application functionality (collation, international support, etc). As a result, we can't provide any universal advice on a minimal configuration. Our documented recommendation is to use the data file shipped with the package, since it is identical to the one used in Android itself, to ensure the best compatibility. 

If you really must reduce size, you'd have to go through the ICU customization tool, select what you need, and perform testing to validate your applications functionality.

Cheers,
Stephen
Reply all
Reply to author
Forward
0 new messages