use extern cipher