SQLite DB encryption

I had like to know the details of encryption of a database created via webworks app. So far I've been able to learn from the separate comments in the forum just SQLite DB in Web app works is encrypted by default. I tried to open the database and I don't see that it is encrypted.

Some of the links that point out:

http://supportforums.BlackBerry.com/T5/Web-and-WebWorks-development/database-problem-in-the-WebWorks...

http://StackOverflow.com/questions/9738163/BlackBerry-attach-pre-populated-SQLite-database

http://supportforums.BlackBerry.com/T5/Web-and-WebWorks-development/reading-SQLite-database-created-...

http://supportforums.BlackBerry.com/T5/Web-and-WebWorks-development/can-a-BlackBerry-SQLite-database...

http://supportforums.BlackBerry.com/T5/Web-and-WebWorks-development/questions-on-JavaScript-extensio...

I like to know are the details. Is there a well documented feature spec or the link that we can lead our customers to?

Okay, I checked with some people and I more information now on what is the situation.

On BBOS:

[JAVA] In a Java application-SQLite databases are not encrypted by default, but can be encrypted.

[WebWorks] In a WebWorks app SQLite databases are encrypted by default and there is no API to change or do anything with the encryption.

The PlayBook/BB10:

[WebWorks] Databases are not encrypted by default - as they exist within secure application sandbox.

In the case of BBOS WebWorks encryption is via WebWorks - who called the BlackBerry Java SQLite API to do this. If these docs that I sent on SQLite encryption in Java apply to the WebWorks.

Tags: BlackBerry Developers

Similar Questions

  • SQLite database encryption

    Hello!

    I'm trying to protect/encrypt an existing database with the app.

    They work well together but I do not understand the signing process described in https://developer.blackberry.com/java/documentation/sqlite_security_1981753_11.html

    I received and used 3 files sent by the authority of BB on the .cod.

    Do I have to create another application to encrypt/protect existing my DB?

    What is the "code signing key file?

    ... Well, I'm lost, I need help ^^
    Thank you

    B

    The link below should help.  This is for persistent objects instead of SQLite, but the concepts and the General steps for installing are the same.

    Persistent objects to protect against access by unauthorized applications

  • Encryption and Protection of SQLite database - App of signature with the Signature of Blackberry tool

    Hello

    I am trying to encrypt and protect my SQLite database. To do this, I have generated a pair of public/private key using the administration Blackberry signature tool. Then, I added the .key file to my project and written the code for encryption and data protection. Then, I signed the app with Blackberry signing authority tool such as mentioned in the documentation. It was duly signed. But my application does not work on the device. It shows that my application tries to access a secure API which means that it is not properly signed.

    What could be the problem?

    And also I want to know what is the difference between the signing of the "Tool of signed" app within the eclipse and sign the application with "Blackberry signing authority tool '?

    I sign my application with eclipse itself "tool of signed" before adding the public .key file and it worked very well.

    Please suggest.

    Thank you.

    You must sign with both.

  • SQLite DB playback when the media card encryption is enabled

    Hello

    My application packages a pre-existing file of SQLite as a resource, that it stores at / / sdcard/databases/[appName]/db.sql.

    My problem is when users have their devices set to encrypt the media card, I put the file on the card but my application can not access or decrypt and so I am unable to use it.

    Is there a way I have my app decrypt the .sql file or keep him encryption in the first place on the map? It seems like it might be a common use case.

    I found a funky work around by renaming the .sql in .mp3, but even once, it will work if the user has media files encryption set to 'disabled '. It's not ideal, of course.


  • What is encryption used in SQLite

    For a mobile customer Air, I can configure DataService to use a custom adapter of SQLite offline and with "encryptLocalCache" sets true. This setting allows data service encrypt the SQLite database. My question is that what encryption algorithm is used in this feature of SQLite encryption, and how long the key is.

    Thank you

    Jiayi

    Hi Jiayi,

    Please see the documentation for AIR, for example: http://help.adobe.com/en_US/as3/dev/WS8AFC5E35-DC79-4082-9AD4-DE1A2B41DAAF.html#WS61068DCE-9499-4D 40-82 B 8 - B71CC35D832C

    Kind regards

    Jürgen

  • Can I encrypt the data or SQLite DBs on mobile devices?

    Hello

    I can?

    Thank you.

    You can run virtually any code AS3 on MobilDevices. In others, you can run perfectly as3Crypto library and encrypt all the data you want.

    http://code.Google.com/p/As3Crypto/

    I believe you can also encrypt the SQLite DB on Mobile, but I have not personally tested.

  • Any other software to visually change the encrypted Air SQLite Databses?

    well I was following, thanks to their developers
    LITA
    Doppler

    well I was following, thanks to their developers
    LITA
    Doppler

  • How to restore passwords signons3.txt? And how works signons.sqlite?

    I had to restore my operating system. I could get places.sqlite to restore the bookmarks (good!). I could find a signons3.txt (dated July 2013) this file will be not complete or up to date, but at least it puts me somewhere before.

    I have read that I need a signon3.txt file to go with the key3. I don't have one. I found a file dated September 2014 signons.sqlite. I moved these two files in my profiles folder, but I don't fit my old password.

    Is it possible for me to use the old key3? Do the key3 and sign must be dated the same thing? Is it possible to recreate the signons.txt?

    I have the password.

    Thanks for help.

    Signons3.txt file store the encryption key used to encrypt and decrypt passwords.
    Encrypted names and passwords are stored in the logins.json file.
    The file signons.sqlite is no longer used in current versions since Firefox 32.

    You must move the logins.json and key3db files in the current profile folder to retrieve passwords.

  • How I can unloc k all the sqlite db in my profile.

    Firefox hangs my X Windows everytime I try to start it. Actually Yes is Thunderbird, but right now I don't have much time to try to reinstall the packages, move my profile., or the standard moves.

    All  I want to do is fetch a few bookmarks from my Toolbar. I've searched for them in the backfiles -- text of course -- and had not luck.  So I tried python to read the sqlite db's.
    

    On all databases, I get the error: "the file is encrypted or is not a database."

    It would be one thing if it was just a single file, but every one of them: cookies, permissions, places, etc.

    I solved the reading problem, sqlite.

    The Mozilla software uses its own sqlite library, and when I wrote a small C program that connects to this library, place the library that comes with my distribution of linux (Centos), everything works fine.

    I thought that just because I tried to install Mozilla's Firefox, instead of Centos. And there, I saw it: libmozsqlite3.so.

    I still have no idea on what kind of conflict/problem prevents me using FF and Thunderbird on this machine. Both work perfectly on all six of my other machines.

  • Key3db and signons.sqlite are breaking Firefox.

    Earlier today, starting Firefox (and only FF - IE worked / works very well) is no longer load google or youtube or some other sites, but instead to give this screen "could not load", he would keep trying to load and would just never got anywhere. The window would not be too close in any way, except for the Task Manager. After uninstalling, reinstalling, reset and all the usual mess, I started to look at the profile and seem to have reduced the problem until signons3.txt and signons.sqlite or maybe just key3.

    Deleting key3 corrects both loading and closing of issues, but the problem of loading is returned immediately if I save passwords and that you restart FF. So now, I don't know what to do to get it working again.

    You will lose all saved password if you deleted the signons3.txt file because this file stores the encryption key for the file signons.sqlite.
    I can hardly imagine that a problem with this file would cause such a question.
    It would be preferable to (re) move the file signons.sqlite as well to avoid problems with the password manager if you cannot restore the file signons3.txt.

    Ever had problems with the recording and display of passwords?

    • Tools > Options > Security: passwords: "saved passwords" > "show passwords".

    Have you tried safe mode to see if an extension is the cause?

  • WebWorks IndexedDB encryption?

    Hello there are other developers!

    I think I read somewhere that sqlite in the Webworks Applications databases are encrypted.

    What I was asking is if goes the same for IndexedDB databases used in the Webworks Applications since I think in browsers, indexedDB has only the same security cookies (same access domain only). If they are not encrypted are there ways encrypt or add any additional security for them?

    No, it is not encrypted.

    However, due to the nature of the BlackBerry 10, it is secured by the operating system in the sandbox of the application (i.e. the OS restricts all other apps trying to access).

  • Problem in opening a card encrypted database

    Hello

    I'm having problems when trying to open a connection to a database sqlite stored on the SD card. I'm moving the file from database on the network when the application is run first, and if the phone is set to encrypt files from media card then it is written with the suffix ".rem". Then I try to open a connection to the database by using the following:

    DatabaseFactory.open(dbPath)
    

    dbPath here is a URI pointing to ' / SDCard/data/database.db' is the file that I downloaded on the network. With encryption disabled it works fine and I can open the database and run queries on it etc. However, with encryption on, I get the following exception:

    net.rim.device.api.database.DatabaseIOException: file not found

    I tried it change at the first glance to 'database.db.rem' in the case of encryption but then receive this error:

    net.rim.device.api.database.DatabaseIOException: decryption header error

    I don't know how to get around this, because I can't find a way to override the settings for encryption on the phone and write the file of database to the SD card without encryption. Or maybe is there a way I can decrypt the database file after writing it if necessary?

    Anyone have any ideas on how to solve this problem?

    Thank you

    It is a known problem. Fortunately, the following workaround solution should solve the problem for you:

    Instead of download the .db and then open it directly in SQLite using the DatabaseFactory class, follow these steps:

    1. create the database (file) using the DatabaseFactory class.
    2. close the database.
    3. open a connection file in the database file that was created in step 1 and 2
    4 truncate the file to 0 by calling FileConnection.truncate (0)
    5. download the database on the network and write the data in the file previously created using FileConnection.openOutputStream)
    6. close the connection files
    7. now re-open the database using the DatabaseFactory class and your SQL should work as expected.

    Creating the file database using the results in the file DatabaseFactory class *not* marked as requiring encryption.

    I hope it works for you.

  • Doubt about database encryption

    I'm trying to encrypt a database by using the signing key. I followed the .key file generation process date of signature of the key tool of bb and created a GWL. Key file and I tried to help in my project, but I m get Excelption, but it is the creation of database with success... Here is my code to encrypt the .db file:

    DatabaseSecurityOptions dbso = new DatabaseSecurityOptions (false);
    cardDetails = DatabaseFactory.create (uri, dbso);

    CodeSigningKey codeSigningKey = CodeSigningKey.get(CodeModuleManager.getModuleHandle( "SQLite" ), "GWL");
    
                    try
                    {
                        // Encrypt and protect the database.  If the database is already
                        // encrypted, the method will exit gracefully.
                        DatabaseFactory.encrypt(uri, new DatabaseSecurityOptions(codeSigningKey));
                    }
                    catch(DatabaseException dbe)
                    {
                        Dialog.inform("Encryption failed - " + dbe.toString());         
    
                    }
    
    CodeModuleManager.getModuleHandle( "SQLite" )
    

    the above line is return '0' and I m get IllegalArgumentexception on the threshold:

    CodeSigningKey codeSigningKey = CodeSigningKey.get(CodeModuleManager.getModuleHandle( "SQLite" ), "GWL");
    

    I solved the problem... It was with the name of the module... Thanks anyway...

  • Widget Sqlite using a packaged .sqlite file?

    If I have a sqlite database must be installed with my widget on the package, how to access these data in the widget? I read that the documentation of gears and 'fix' and 'Detach' commands are the two people with reduced mobility?

    You will not be able to distribute a database SQLite pre-packaged with your application.  All data transmissions are encrypted on the device and cannot be replaced.

    You will need to build your database through JavaScript.  For your data by default, you can incorporate XML files in your widget and then loop through them to feed your database in a worker thread.

  • Wow. Display encrypted Gears db

    I just read a post that a little amazed all hope of debugging easily using the Sqlite database. http://208.74.204.192/T5/Web-development/widget-SQLite-using-a-packaged-SQLite-file/m-p/380088/highl...

    When I try to open a Sqlite database created in the Simulator (using the Sqlite database browser or browser Sqlite Expert), I get the message: "file is encrypted or not a database.

    I take this means that using any tool is impossible on the basis of the gears, since they are encrypted?

    Yep, to clarify, non encrypted db should be used for debugging purposes.  When your application is ready for production, allow the application to create the correctly encrypted db.

    EI

Maybe you are looking for