The classification of languages based on unambiguous product of words and codes contains a gap. Our work aims at investigations to fill up thegap. The classes of k-unambiguous languages is considered as extensions of codes, in which a code is kunambiguous for all k ≥ 0 , the unambiguous product can be used to define k-unambiguous languages with k ≤ 2. Given a regular language X, its unambiguous value k can be determined by an O(n2) time complexity algorithm, where n is the finite index of the syntactic congruence of X. The k-unambiguous languages with kis large enough, can be used in information encryption, and can provide us an encryption schemawith high enough security since their ambiguous characteristics.