You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The checksumpipe hashes input and returns a hexadecimal string.
When this string is converted to base64 with the Base64Pipe, the result is calculated using character encoding instead of the hexadecimal value of the hexstring.
Expected Behavior
I want the Base64Pipe to convert from hexadecimal to base64 when a hexstring is provided, or be able to retrieve a bas64 encoded version after hashing.
Environment Information
FF! 8.1.0-RC2-20240508.012135: frank2openbanking
Running on DESKTOP-1R1U3IC using Apache Tomcat/9.0.88
Java Version: OpenJDK Runtime Environment (21.0.2+13-LTS)
Heap size: 151M, total JVM memory: 236M
Free disk space: 59GB, total disk space: 350GB
Up since: 2024-06-21 09:16:00 (19m)
Steps To Reproduce
Create an adapter with the following pipes:
Configuration
<Adaptername="HexToB64">
<Receivername="HexToB64Receiver">
<ApiListeneruriPattern="b64"name="HexToB64Listener" />
</Receiver>
<Pipeline>
<Exits>
<Exitname="Success"state="SUCCESS" />
<Exitname="Error"state="ERROR" />
</Exits>
<!-- Hash Hello World with the sha256 algorithm -->
<ChecksumPipename="CreateHexString"getInputFromFixedValue="Hello World!"type="SHA256" />
<!-- Convert the hexstring to base64 -->
<Base64Pipename="ConvertHexToB64" />
</Pipeline>
</Adapter>
Input
No response
What database are you using?
No response
What browsers are you seeing the problem on?
Chrome
Relevant Log Output
No response
Anything else?
No response
The text was updated successfully, but these errors were encountered:
ChecksumPipe is capable of generating a 'hash' of a given message (file or string) using an algorithm. With this, you can prove integrity of the message. HashPipe uses Mac implementations of algorithms. A Mac algorithm uses a secret, combined with the algorithm to create a 'hash' of a message. Only sources which have this secret are able to generate the same hash for the given message. With this, you can prove integrity and authenticity of a message.
update
With this in mind we decided we want to keep these two implementations and want to extend the ChecksumPipe with a parameter to control the output format (Hex/Base64). The HashPipe already has this option.
Other todo's:
Clear documentation on when and how to use them, preferably with examples, needs to be added to both classes.
Refactor the naming of parameters inner classes in ChecksumPipe to be clear (eg: ChecksumType should probably be something like 'AlgorithmType`).
Add unit tests to ChecksumPipeTest for the new output type parameter
Is your Frank! up to date?
8.2.0-20240621.042325
Current Behavior
The checksumpipe hashes input and returns a hexadecimal string.
When this string is converted to base64 with the Base64Pipe, the result is calculated using character encoding instead of the hexadecimal value of the hexstring.
Expected Behavior
I want the Base64Pipe to convert from hexadecimal to base64 when a hexstring is provided, or be able to retrieve a bas64 encoded version after hashing.
Environment Information
FF! 8.1.0-RC2-20240508.012135: frank2openbanking
Running on DESKTOP-1R1U3IC using Apache Tomcat/9.0.88
Java Version: OpenJDK Runtime Environment (21.0.2+13-LTS)
Heap size: 151M, total JVM memory: 236M
Free disk space: 59GB, total disk space: 350GB
Up since: 2024-06-21 09:16:00 (19m)
Steps To Reproduce
Create an adapter with the following pipes:
Configuration
Input
No response
What database are you using?
No response
What browsers are you seeing the problem on?
Chrome
Relevant Log Output
No response
Anything else?
No response
The text was updated successfully, but these errors were encountered: