- We check whether the PDF was produced from a trusted source or not.
- We check whether the date of creation and modification are same or not. - Usually, whenever a PDF is modified, the modification date is updated in the metadata by the tool that was used. It solely depends on the tool that was used. Some tools also provide the option to users to not change the modification date or overwrite it or simply remove it. Generally speaking, renaming a PDF should not change the modification date.It may however change if it was done by a third-party tool that explicitly updates it.
- We check whether the PDF contains an acceptable number of fonts or not.
- Whether the structure of the PDF is valid or not.
- We have balance checks employed in the algorithm. - For every transaction, we compute the balance that should be and check with the balance provided in the statement. If it doesn't match, we flag such transactions. For example, if the previous balance was Rs. 1,000 and the current transaction is a deposit of Rs. 500, then the expected balance should be Rs. 1,500. If this value does not match with the balance provided in the statement for the transaction, then we flag it and it shows up in the error_transactions key.
This is useful in cases when a malicious user may edit the salary transaction by changing the deposit amount, but misses editing the balance column or the other transactions to keep the balances in sync.
Try It! to start a request and see the response here!