PCROP is indeed available on both banks.
One PCROP area is used by SBSFU.
The other PCROP area can be used by your application, regardless of SBSFU.
You can configure the OBs with Cube Programmer to have this second PCROP area, then, when designing your software you will define an execute-only section that will contain what you want to protect from a FLASH dump.
Your application can fully access its own PCROP area without relying on SBSFU.
You will call your code "as usual".
But the constraint is that this code placed in PCROP area must rely on I-fetch only (execute-only code).
As I said, this PCROP protection will provide a FLASH dump protection but anybody can call this code (unless you restrict its access with MPU isolation).
So, an attacker might take control of your application and call this code to communicate with STSAFE-A110.
Here, you can raise the bar by using MPU isolation and make sure the code you do not trust in your application cannot call the PCROP-ed service.
About the private key, what I mean is that you may have a hierarchy of assets in term of criticity.
If this private key is your critical asset, then with STSAFE-A11à your are on the safe side, the key will never go out of the secure element.
Now, the pairing keys must be available on STM32 side so we also need to protect them (PCROP, WRP and MPU for instance).
In the worst case, if an attacker manages to circumvent the protection of the pairing keys then what can he do ?
He can communicate with STSAFE-A110.
Will he be able to extract the private key ? No.
Will he be able to ask STSAFE-A110 to use this private key to sign something: Yes.
So, if your pairing keys can be controlled by the attacker then he can spoof your device because he can use your private key to spoof your identity.
Nevertheless:
- if he tries to steal your device then he cannot reprogram the private key: blocked.
- If he tries to create a clone of your device, as he does not know the private key he is blocked too
So you gain 2 things:
- the attack is much more complex because it is not only dumping a FLASH or RAM area from the STM32
- even if the attack succeeds then he can do things with your actual device but he cannot create a clone
At least this is what I can think about it at the moment.
Of course, this deserves a real security analysis.