add salt support