abstract crypto