The encrypted fields feature in Machform, introduced in version 6, was very welcome; in fact, I'd say it is an essential feature. Unfortunately, as it exists now, it is incomplete and I am very hesitant to use it. I am interested in finding out if other people feel the same way.
The problems with encrypted fields as they are implemented now are official limitations of this feature, detailed in the release notes for encrypted fields. The primary one is that once you turn on encryption for a form and activate it for a specific field, the data in that field is trapped in Machform forever.
Once you encrypt a field, it will always remain encrypted, even if you turn off encryption for that field. In fact, turning off encryption means you cannot read it even if you decrypt the entries for that form by using your private key. Fortunately, you will be able to read the data again if you turn encryption back on for a field.
Even worse, form-level encryption is not reversible. Once you turn on the encryption option for a given form and encrypt some fields, if you turn off form-level encryption, the encrypted data is not only still encrypted, but you will never be able to view it again, even if you turn encryption back on for that form. Admittedly, a prominent warning is displayed if you try to turn form-level encryption off, but I have had users ignore such warnings in the past. If this cannot be changed so that the encrypted data can be read again if you turn form-level encryption on, then off, then on again, I think we should be able to disallow users from turning off form-level encryption once they have turned it on, either on a user-by-user basis, or there should be an option to allow only full Machform administrators to turn off form-level encryption.
You can only view the encrypted data in clear form when you are viewing the entries one by one; encrypted entries in the "data-table" view are always encrypted, even when you have applied your private key to unencrypt your data. You also cannot search (filter) encrypted entries, even when you have applied your private key to unencrypt them, which makes working with large data sets very awkward.
And you cannot export an entry as a PDF, Excel file, or CSV text file, or transfer it to another website using webhooks. There is a department at our college that uses a form that collects personally identifiable information (PII) that should be encrypted, but the data collected by the form must be transfered to another student records system we use. Right now, this is done by exporting a PDF file and attaching that file to the student's record in the other system. If the PII fields are encrypted, then this will be impossible.
Does anyone else share my misgivings about using the existing field-level encryption feature in Machform? I don't know what is technically feasible, but it seems to me that if the entire entry can be shown in clear text when viewing an entry in the web interface, it can be exported as well, or searched.
Appnitro, please consider enhancing the existing encrypted fields feature of Machform in the near future; right now I'm not sure we can use it and we would like to.