bitcoin and cryptocurrency technologies a comprehensive introduction