Add sha256 support and test cases