Printer Friendly

On the security of a simple three-party key exchange protocol without server's public keys.

1. Introduction

One of the fundamental problems in the areas of cryptography and communication security is to enable two parties communicating over a public network to establish a high-entropy secret key (known as a session key) from their low-entropy passwords which are easy for humans to remember. Password-based authenticated key exchange (PAKE) protocols are designed to solve this problem and often assume the three-party setting, in which each party (commonly called a client) needs to remember only a single password shared with a trusted server [1-11]. The design of secure yet efficient three-party PAKE protocols is notoriously hard and continues to be a subject of active research. A key challenge in designing such protocols is to prevent potential attacks by a malicious client, who is registered with the server, and thus is able to set up normal protocol sessions with other clients.

In this work, we present previously unpublished flaws in the S-EA-3PAKE protocol, a three-party PAKE protocol proposed by Lee and Hwang [4]. The design of the S-EA3PAKE protocol is relatively simple and efficient and carries a claimed proof of security in the ROR model according to Abdalla et al. [1]. However, despite the claim of provable security, this protocol exhibits major security weaknesses. First, the protocol fails to achieve implicit key authentication, which is the fundamental security property that any given key exchange protocol is expected to provide. We demonstrate this by mounting a man-in-the-middle attack against the protocol. The attacker could be any malicious client. Second, the protocol is vulnerable to an offline dictionary attack by a malicious client and thus other clients cannot be guaranteed of the security of their passwords. Third, the protocol does not achieve semantic security of session keys; that is, session keys established by S-EA-3PAKE are distinguishable from random keys. We show this by mounting a passive attack in the ROR model, thereby invalidating the existing proof of security for S-EA-3PAKE. In addition to reporting the security vulnerabilities, we will also show how to fix the S-EA-3PAKE protocol so that it can achieve implicit key authentication as well as password security and semantic security.

Throughout the paper, we make the following assumptions on the capabilities of the adversary A in order to properly analyze the security properties of three-party PAKE protocols.

(i) A is either an outsider or an insider who runs in a probabilistic polynomial time.

(ii) A has the complete control of all message exchanges between the server and clients. That is, A can eavesdrop, insert, modify, intercept, and delete messages exchanged among the protocol participants at will.

This assumption is the standard one [12,13] and is consistent with Dolev-Yao model.

2. The S-EA-3PAKE Protocol

The S-EA-3PAKE protocol [4] is built upon Abdalla and Pointcheval's 2-party PAKE protocol called SPAKE [14]. Let A and B be two clients who wish to establish a session key, and [pw.sub.A] and [pw.sub.B] denote the passwords of A and B, respectively, shared with a trusted server S. The public parameters required by S-EA-3PAKE include

(i) a large prime p and a generator g of [Z.sup.*.sub.p],

(ii) two random elements M and N of [Z.sup.*.sub.p],

(iii) a cryptographic hash function H used as a key derivation function and

(iv) a pair of message authentication code (MAC) generation/verification algorithms (Mac, Ver), where Ver outputs a bit, with 1 meaning accept and 0 meaning reject.

S-EA-3PAKE is shown in Figure 1 and proceeds as follows.

Step 1. A sends S and B a protocol initiation message [M.sub.init] = (A, B) which states "A wants to establish a session key with B."

Step 2. A and S establish a shared secret key [k.sub.AS] by running the 2-party protocol SPAKE. Likewise, B and S establish a shared secret key [k.sub.BS]. More precisely, [k.sub.AS] and [k.sub.BS] are established as shown in Table 1.

Step 3. A (resp. B) computes the authenticator. [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] and sends it to S. Step 4. S aborts if either [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] or [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] is untrue. Otherwise, S selects a random s [member of] [Z.sup.*.sub.p], computes

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], (1)

and sends ([[bar.X].sup.*], [[sigma].sub.SA]) and ([[bar.Y].sup.*], [[sigma].sub.SB]) to A and B, respectively

Step 5. A checks if [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] and aborts if the check fails. Otherwise, A computes the key derivation secret, [K.sub.A] = [([[bar.X].sup.*]/[k.sub.AS]).sup.x], and the session key, [sk.sub.A] = H(A [parallel] B [parallel] [K.sub.A]). Meanwhile, B checks if [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] and aborts if the check fails. Otherwise, B computes [K.sub.B] = [([[bar.Y].sup.*]/[k.sub.BS]).sup.y] and [sk.sub.B] = H(A [parallel] B [parallel] [K.sub.B]).

Step 6. A and B perform key confirmation by exchanging [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] and verifying them in a straightforward way.

The correctness of S-EA-3PAKE can be easily verified from [K.sub.A] = [K.sub.B] = [g.sup.xys].

3. Previously Unpublished Flaws

3.1. No Implicit Key Authentication. Implicit key authentication of S-EA-3PAKE can be violated via a man-in-the-middle attack by a malicious (registered) client C. A possible attack scenario is as follows.

(1) The attacker C blocks the protocol initiation message [M.sub.init] = (A, B) from reaching S and instead sends (to S) two forged initiation messages M[nit = (A, C) and [M.sup.".sub.init] = (C, B) which state, respectively, "A wants to establish a session key with C" and "C wants to establish a session key with B." As a result, S will think that there are two protocol sessions running concurrently; let [[PI].sub.A,C] denote the session between A and C and let [[PI].sub.C,B] denote the session between C and B.

(2) In both sessions [[PI].sub.A,C] and [[PI].sub.C,B], C performs Step 2 through 5 as per the protocol specification with its true identity. This can go undetected since none of the authenticators, [[sigma].sub.AS], [[sigma].sub.BS], [[sigma].sub.SA], and [[sigma].sub.SB], can confirm who the actual protocol participants are. As a result, C will share a session key, [sk.sub.A,C], with A and another session key, [sk.sub.C,B], with B.

(3) With [sk.sub.A,C] and [sk.sub.C,B] in hand, C can perform Step 6 (of both sessions) in the straightforward way without being detected; C simply replaces [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] with [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] respectively.

At the end of the attack scenario, A and B believe that they have established a secure session with each other sharing a key, while in fact they have shared their keys with the attacker C. Consequently, S-EA-3PAKE fails to achieve implicit key authentication.

3.2. No Password Security. We now show that S-EA-3PAKE cannot protect clients' passwords against an offline dictionary attack. Assume a malicious client C who wants to find out the passwords of A and B. Let [pw.sub.C] be the password of C. Then, an offline dictionary attack by C against both A and B can be mounted as follows.

Phase 1 (gathering password verifiers online). C conducts a type of man-in-the-middle attack to obtain information required to verify password guesses.

(1) C blocks the initiation message [M.sub.init] = (A, B) from reaching S and instead sends two forged initiation messages [M".sub.init] = (A,C) and [M".sub.init] = (C, B), thereby deceiving S into thinking that there are two protocol sessions, [[PI].sub.A,C] and [[PI].sub.C,B], running concurrently.

(2) C then performs Step 2 through 5 of both sessions as specified by the protocol except for the following.

(i) When A and B send [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] in Step 2, C makes a copy of these messages for later use.

(ii) C sends the same Step 2 message [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] of its own for both sessions, where z[[member of].sub.R][Z.sup.*.sub.p].

(iii) When S sends {[[bar.X].sup.*], [[sigma].sub.SA]} and ([[bar.Y].sup.*], [[sigma].sub.SB]}, respectively, to A and B in Step 4 of the sessions, C replaces [[bar.X].sup.*] and [[bar.Y].sup.*] with [[??].sup.*] = [[bar.X].sup.*] x [g.sup.z] and [[??].sup.*] = [[bar.Y].sup.*] x [g.sup.z], respectively.

Let {[[bar.Z].sup.*], [[sigma].sub.SC]} and {[[bar.Z'].sup.*], [[sigma]'.sup.SC]} denote the two messages sent by S to C in Step 4 of [[PI].sub.A,C] and [[PI].sub.C,B], respectively.

(3) Now when A and B exchange the key confirmation messages [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], C intercepts these messages and instead sends the clients "a failure message" to trick them into believing that, due to an unexpected error, their partner has failed to compute the session key and thus has aborted the protocol.

Phase 2 (verifying password guesses offline). C can now verify password guesses both on [pw.sub.A] and [pw.sub.B] using the obtained information ([X.sup.*], [[bar.Z].sup.*], [[sigma].sub.AB]) and ([Y.sup.*], [[bar.Z'].sup.*], [[sigma].sub.BA]), respectively. (For simplicity, we here describe this verification phase only for [pw.sub.A]; the case for [pw.sub.B] proceeds correspondingly).

Step 1. C computes

[K.sub.C] = [([[bar.Z].sup.*]/[k.sub.CS]).sup.z] = [[bar.Z].sup.z] = [g.sup.xzs], (2)

where [k.sub.CS] is the secret key shared between C and S in Step 2 of session [[PI].sub.A,C].

Step 2. Note that, since [[bar.X].sup.*] was replaced with [[??].sup.*] = [[bar.X].sup.*] x [g.sup.z], A must have computed [K.sub.A] as

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]. (3)

With this in mind, C makes a guess [pw'.sub.A] on the password [pw.sub.A] and computes

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]. (4)

Step 3. A verifies the correctness of [pw'.sub.A] by checking that [[sigma].sub.AB] is equal to [[sigma]'.sub.AB]. If they are equal, then [pw'.sub.A] is the correct password with an overwhelming probability.

Step 4. C repeats Steps 2 and 3 (of this verification phase) until a correct password is found.

This offline dictionary attack can be trivially simplified to an insider-attacker version whereby one of the two clients, A and B, tries to discover the other client's password. After all, the S-EA-3PAKE protocol cannot prevent any (malicious) client from mounting an offline dictionary attack against any other clients.

3.3. No Semantic Security. Finally, we point out that the S-EA-3PAKE protocol does not achieve the semantic security of session keys. In S-EA-3PAKE, the session key [sk.sub.A] (resp. [sk.sub.B]) is used as the MAC key in generating the authenticator [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]. This oversight leaks some information about the session key and allows an adversary to distinguish the real session key from a random key chosen from the session key space. Indeed, S-EA-3PAKE can be easily broken even in the presence of a passive adversary who asks only a single Execute and Test query. A simple attack by such an adversary A can be described as follows.

(1) First, A makes an Execute([[PI].sup.*.sub.A], [[PI].sup.*.sub.B], [[PI].sup.*.sub.S]) query, where [[PI].sup.*.sub.A], [[PI].sup.*.sub.B], and [[PI].sup.*.sub.S] denote any instance of A, B, and S, respectively. This query prompts an honest execution of the protocol between the three instances and will return the transcript of the protocol execution.

(2) Next, A makes a Test([[PI].sup.*.sub.A]) query and receives a key [bar.sk] in response to the query.

(3) Then, A computes [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] and checks if [[sigma]'.sub.AB] is equal to [[sigma].sub.AB]. The key [bar.sk] is real if they are equal and otherwise it is random.

This attack invalidates the existing proof of security for S-EA3PAKE [4]. We refer the reader to the work of Bellare et al. [13] for a possible countermeasure.

4. An Improved Three-Party PAKE Protocol

In this section, we propose an improved three-party PAKE protocol which achieves semantic security and is secure against man-in-the-middle attacks as well as offline dictionary attacks. Let S be the trusted server and let A and B be two registered clients of S who wish to establish a shared session key. We denote the passwords of A and B by [pw.sub.A] and [pw.sub.B], respectively. Our improved protocol uses the following public parameters:

(i) a finite cyclic group G of prime order q and a generator g of G;

(ii) two random elements M and N of G;

(iii) a cryptographic hash function H : [{0,1}.sup.*] [right arrow] [{0,1}.sup.l], where l represents the bit length of session keys;

(iv) a pair of message authentication code (MAC) generation /verification algorithms (Mac, Ver), where Ver outputs a bit, with 1 meaning accept and 0 meaning reject.

The improved protocol is illustrated in Figure 2 and its description is as follows.

Step 1. A sends S and B a protocol initiation message [M.sub.init] = (A, B) which states "A wants to establish a session key with B".

Step 2. A and S establish a shared secret key [k.sub.AS] by running the 2-party protocol SPAKE. Likewise, B and S establish a shared secret key [k.sub.BS]. More precisely, [k.sub.AS] and [k.sub.BS] are established as shown in Table 2. (Note in Table 2 that all the random exponents are selected from Z? as our protocol works in a group of prime order q.)

Step 3. A (resp. B) computes the authenticator [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] and sends it to S.

Step 4. S aborts if either [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] is untrue. Otherwise, S selects a random s [member of] [Z.sub.q], computes

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII], (5)

and sends ([bar.X], [[sigma].sub.SA]) and ([bar.X], [[sigma].sub.SB]) to A and B, respectively.

Step 5. A checks if [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] and aborts if the check fails. Otherwise, A computes the key derivation secret, [K.sub.A] = [[bar.Y].sup.x], and the session key, [sk.sub.A] = H(A [parallel] B [parallel] [K.sub.A]). Meanwhile, B checks if [MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] and aborts if the check fails. Otherwise, B computes [K.sub.B] = [[bar.X].sup.y] and [sk.sub.B] = H(A [parallel] B [parallel] [K.sub.B]).

Step 6. A and B perform key confirmation by exchanging [[sigma].sub.AB] = H(Ka [parallel] A [parallel] B) and [[sigma].sub.BA] = H(KB [parallel] B [parallel] A) and verifying them in a straightforward way.

It can be easily verified that A and B compute session keys of the same value since [K.sub.A] = [K.sub.B] = [g.sup.xys]. Compared with the S-EA-3PAKE protocol, our improved protocol does not require the computations of [[bar.X].sup.*] and [[bar.Y].sup.*] and simplifies the computations of [K.sub.A] and [K.sub.B]. Therefore, it is fair to say that our protocol performs slightly better than the S-EA-3PAKE protocol.

Man-in-the-middle attacks and offline dictionary attacks such as the ones we mounted against the S-EA-3PAKE protocol are no longer valid against our improved protocol since the authenticators, [[sigma].sub.AS], [[sigma].sub.BS], [[sigma].sub.SA], and [[sigma].sub.SB], can now confirm who the actual protocol participants are. Moreover, our protocol achieves semantic security as the key derivation secrets KA and KB instead of the session keys [sk.sub.A] and [sk.sub.B] are used in generating the authenticators [[sigma].sub.AB] = H([K.sub.A] [parallel] A [parallel] B) and [[sigma].sub.BA] = H(KB [parallel] B [parallel] A).

5. Concluding Remarks

The model where S-EA-3PAKE was claimed to be provably secure does not allow the adversary to ask Corrupt queries and thus cannot capture any kind of attacks that can be mounted by malicious clients. Accordingly, neither the man-in-the-middle attack nor the offline dictionary attack described in this work can be captured in the proof model. This situation is clearly unacceptable, from both theoretic and practical perspectives, and highlights the importance of considering Corrupt queries when proving security of three-party PAKE protocols. Although both the man-in-the-middle attack and the dictionary attack can be easily prevented by modifying the computations of the authenticators [[sigma].sub.AS], [[sigma].sub.BS], [[sigma].sub.SA], and [[sigma].sub.SB], the existence of a security proof for the S-EA-3PAKE protocol in a stronger model remains an open question. We finally note that all the three attacks presented in this work against S-EA-3PAKE also apply to the S-IA-3PAKE protocol [4], a simplified variant of S-EA-3PAKE. This becomes clear as soon as we notice that S-IA-3PAKE is different from S-EA-3PAKE only in the fact that it does not require the transmission of the authenticators [[sigma].sub.AS], [[sigma].sub.BS], [[sigma].sub.SA], and [[sigma].sub.SB].

http://dx.doi.org/10.1155/2014/479534

Conflict of Interests

The authors of the paper do not have a direct financial relation with any institution or organization mentioned in their paper that might lead to a conflict of interests for any of the them.

Acknowledgment

This work was supported by Konkuk University.

References

[1] M. Abdalla, P. Fouque, and D. Pointcheval, "Password-based authenticated key exchange in the three-party setting," in Public Key Cryptography-PKC 2005, vol. 3386 of Lecture Notes in Computer Science, pp. 65-84, Springer, Berlin, Germany, 2005.

[2] J. Nam, Y. Lee, S. Kim, and D. Won, "Security weakness in a three-party pairing-based protocol for password authenticated key exchange," Information Sciences, vol. 177, no. 6, pp. 1364-1375, 2007

[3] J. Nam, J. Paik, H. Kang, U. M. Kim, and D. Won, "An offline dictionary attack on a simple three-party key exchange protocol," IEEE Communications Letters, vol. 13, no. 3, pp. 205-207, 2009.

[4] T. Lee and T. Hwang, "Simple password-based three-party authenticated key exchange without server public keys," Information Sciences, vol. 180, no. 9, pp. 1702-1714, 2010.

[5] T. Chang, M. Hwang, and W Yang, "A communication-efficient three-party password authenticated key exchange protocol," Information Sciences, vol. 181, no. 1, pp. 217-226, 2011.

[6] J. Zhao and D. Gu, "Provably secure three-party password-based authenticated key exchange protocol," Information Sciences, vol. 184, pp. 310-323, 2012.

[7] S. Wu, Q. Pu, S. Wang, and D. He, "Cryptanalysis of a communication-efficient three-party password authenticated key exchange protocol," Information Sciences, vol. 215, pp. 8396, 2012.

[8] C. Lee, S. Chen, and C. Chen, "A computation-efficient three-party encrypted key exchange protocol," Applied Mathematics & Information Sciences, vol. 6, no. 3, pp. 573-579, 2012.

[9] S. Wu, K. Chen, Q. Pu, and Y. Zhu, "Cryptanalysis and enhancements of efficient three-party password-based key exchange scheme," International Journal of Communication Systems, vol. 26, no. 5, pp. 674-686, 2013.

[10] J. Nam, K. K. R. Choo, M. Kim, J. Paik, and D. Won, "Dictionary attacks against password-based authenticated three-party key exchange protocols," KSII Transactions on Internet and Information Systems, vol. 7, no. 12, pp. 3244-3260, 2013.

[11] J. Nam, K. K. R. Choo, J. Kim et al., "Password-only authenticated three-party key exchange with provable security in the standard model," The Scientific World Journal, vol. 2014, Article ID 825072,11 pages, 2014.

[12] M. Bellare and P. Rogaway, "Entity authentication and key distribution," in Advances in Cryptology--(CRYPTO '93), vol. 773 of Lecture Notes in Computer Science, pp. 232-249, Springer, Berlin, Germany, 1994.

[13] M. Bellare, D. Pointcheval, and P. Rogaway, "Authenticated key exchange secure against dictionary attacks," in Advances in Cryptology--EUROCRYPT 2000, vol. 1807 of Lecture Notes in Computer Science, pp. 139-155, Springer, Berlin, Germany, 2000.

[14] M. Abdalla and D. Pointcheval, "Simple password-based encrypted key exchange protocols," in Topics in Cryptology --CT-RSA 2005, vol. 3376 of Lecture Notes in Computer Science, pp. 191-208, Springer, Berlin, Germany, 2005.

Junghyun Nam, (1) Kim-Kwang Raymond Choo, (2) Minkyu Park, (1) Juryon Paik, (3) and Dongho Won (3)

(1) Department of Computer Engineering, Konkuk University, 268 Chungwondaero, Chungju, Chungcheongbuk-do 380-701, Republic of Korea

(2) Information Assurance Research Group, Advanced Computing Research Centre, University of South Australia, Mawson Lakes, SA 5095, Australia

(3) Department of Computer Engineering, Sungkyunkwan University, 2066 Seobu-ro, Suwon, Gyeonggi-do 440-746, Republic of Korea

Correspondence should be addressed to Dongho Won; dhwon@security.re.kr

Received 19 June 2014; Accepted 16 July 2014; Published 1 September 2014

Academic Editor: Moonseong Kim

TABLE 1: Establishing the secret keys [k.sub.AS] and [k.sub.BS]
in the S-EA-3PAKE protocol.

[pw.sub.A] [right arrow]          [pw.sub.B] [right arrow]
[k.sub.AS]                        [k.sub.BS]

A chooses a random x              B chooses a random y [member of]
  [member of] [Z.sup.*.sub.p],      [Z.sup.*.sub.p], computes
  computes X = [g.sup.x] and        Y = [g.sup.y] and
  [MATHEMATICAL EXPRESSION          [MATHEMATICAL EXPRESSION NOT
  NOT REPRODUCIBLE IN ASCII.],      REPRODUCIBLE IN ASCII.], and
  and sends [X.sup.*] to S.         sends [Y.sup.*] to S. At the
  At the same time, S chooses       same time, S chooses a random
  a random u [member of]            v [member of] [Z.sup.*.sub.p],
  [Z.sup.*.sub.p], computes         computes V = [g.sup.v] and
  U = [g.sub.u] and [U.sup.*]       [V.sup.*] = [MATHEMATICAL
  [MATHEMATICAL EXPRESSION          EXPRESSION NOT REPRODUCIBLE
  NOT REPRODUCIBLE IN ASCII.],      ASCCI.], and sends [V.sup.*]
  and sends [U.sup.*] to A.         to B. Then, B and S set
  Then, A and S set [k.sub.AS]      [k.sub.BS] = [g.sup.yv].
  = [g.sup.xu].

TABLE 2: Establishing the secret keys [k.sub.AS] and [k.sub.BS]
in our improved protocol.

[pw.sub.A] [right arrow]          [pw.sub.B] [right arrow]
[k.sub.AS]                        [k.sub.BS]

A chooses a random x              B chooses a random y [member of]
  [member of] [Z.sup.*.sub.p],      [Z.sup.*.sub.p], computes
  computes X = [g.sup.x] and        Y = [g.sup.y] and
  [MATHEMATICAL EXPRESSION          [MATHEMATICAL EXPRESSION NOT
  NOT REPRODUCIBLE IN ASCII.],      REPRODUCIBLE IN ASCII.], and
  and sends [X.sup.*] to S.         sends [Y.sup.*] to S. At the
  At the same time, S chooses       same time, S chooses a random
  a random u [member of]            v [member of] [Z.sup.*.sub.p],
  [Z.sup.*.sub.p], computes         computes V = [g.sup.v] and
  U = [g.sub.u] and [U.sup.*]       [V.sup.*] = [MATHEMATICAL
  [MATHEMATICAL EXPRESSION          EXPRESSION NOT REPRODUCIBLE
  NOT REPRODUCIBLE IN ASCII.],      ASCCI.], and sends [V.sup.*]
  and sends [U.sup.*] to A.         to B. Then, B and S set
  Then, A and S set [k.sub.AS]      [k.sub.BS] = [g.sup.yv].
  = [g.sup.xu].
COPYRIGHT 2014 Hindawi Limited
No portion of this article can be reproduced without the express written permission from the copyright holder.
Copyright 2014 Gale, Cengage Learning. All rights reserved.

Article Details
Printer friendly Cite/link Email Feedback
Title Annotation:Research Article
Author:Nam, Junghyun; Choo, Kim-Kwang Raymond; Park, Minkyu; Paik, Juryon; Won, Dongho
Publication:The Scientific World Journal
Article Type:Report
Date:Jan 1, 2014
Words:3842
Previous Article:Evaluation models for soil nutrient based on support vector machine and artificial neural networks.
Next Article:A supervised approach to predict the hierarchical structure of conversation threads for comments.
Topics:

Terms of use | Privacy policy | Copyright © 2025 Farlex, Inc. | Feedback | For webmasters |