partially updated crypto code, it is not safe anyways