After PR #810 (comment) we now have an open path to migrate to OPAQUE api.
We'll need to first make sure that the state files are marshaled/unmarshaled using protojson instead of encode/json though. Both in here and in the BSR backend code, because the new OPAQUE api has json tags but the fields are unexported, so encoding/json does not produce/read the state files anymore.