Group key agreement protocols for wired networks are not applicable in ad hoc networks because of the 1-hop assumption of these protocols and the dynamic, multi-hop attributes of ad hoc networks. An authenticated group key agreement for ad hoc networks is proposed which arranges the group members in a cluster-based hierarchical spanning tree structure. The scheme uses Intra-cluster group key agreement (IC-GKA) to get the cluster key and arbitrary topology generalization of Diffie-Hellman (AT-GDH) to compute the final group key. BLS short signature algorithm (reducing the message size) is adopted to authenticate the messages exchanged during the protocol execution. The protocol can handle the dynamic membership changes in ad hoc networks. By security analysis of AT-GDH for the first time, the paper proves the semantic security of our proposed protocol. Complexity analysis shows that our protocol is suitable for ad hoc networks with large size.