Hi,
For reference please see a recent cryptography project awarded to me here in Freelancer:
https://www.freelancer.com/projects/dot-net/Microservices-Design.html
For this project, I have created interoperable symmetric (AES) and asymmetric (RSA) libraries for Java and .NET/C#, meaning a stream encrypted on the Java side can be successfully decrypted by the .NET side, and vice-versa. And also, a password hashed on the Java side can be successfully validated on the .NET side, and vice-versa, given of course the correct password was provided. The use cases were unit tested using JUnit 5 (Java - Spring Boot) and xUnit (.NET).
I have also used password encryption using PBKDF2, and cryptography libraries such as BouncyCastle and Jasypt.
Thank you.