working on encryption, todo: challange-response