Faits:
A. A._, ressortissant marocain né le 10 avril 1968, est arrivé en Suisse en 1990. Le 10 mai 1991, il a épousé B._, ressortissante suisse. En raison de ce mariage, le prénommé a été mis au bénéfice d'une autorisation de séjour pour vivre auprès de son épouse.
Le 8 avril 1996, A._ a déposé auprès de l'Office fédéral des étrangers (ODE, devenu depuis l'Office fédéral des migrations [ci-après: l'ODM]) une demande de naturalisation facilitée fondée sur son mariage avec B._. La requête a toutefois été classée, car la naturalisation facilitée ne pouvait pas être accordée tant qu'il existait une inscription au casier judiciaire. Or, l'intéressé avait été condamné par ordonnance du Juge d'instruction du Nord vaudois du 29 juin 1999 à une peine de sept jours d'emprisonnement avec sursis durant deux ans pour recel et contravention à la législation sur les armes et les munitions.
B. L'inscription au casier judiciaire ayant été radiée, A._ a déposé une nouvelle demande de naturalisation facilitée le 16 avril 2002. Dans le cadre de l'instruction de cette demande, le requérant et son épouse ont contresigné, le 31 juillet 2003, une déclaration écrite aux termes de laquelle ils confirmaient vivre en communauté conjugale effective et stable, résider à la même adresse et n'envisager ni séparation ni divorce. Par déclaration séparée datée du même jour, A._ a confirmé avoir respecté l'ordre juridique en Suisse et dans les pays dans lesquels il avait résidé aux cours des dix années précédentes, et n'avoir, même au-delà de ces dix années, pas commis de délits pour lesquels il devait s'attendre à être poursuivi ou condamné. Il a également été rendu attentif au fait que sa naturalisation pouvait être annulée en cas de fausse déclaration; au cas où il estimait ne pas pouvoir signer cette déclaration, le requérant était invité à communiquer à l'Office fédéral de l'immigration, de l'intégration et de l'émigration (IMES, devenu ensuite l'ODM) tous les renseignements utiles dans une lettre séparée. Par décision du 16 octobre 2003, l'IMES a accordé la naturalisation facilitée à A._, lui conférant le droit de cité du canton de Fribourg dont son épouse était titulaire.
C. Le 2 août 2006, le Tribunal correctionnel de l'arrondissement de la Broye et du Nord Vaudois (ci-après: le Tribunal d'arrondissement) a condamné A._ à dix ans de réclusion pour recel, contravention et infraction grave à la loi fédérale du 3 octobre 1951 sur les stupéfiants et les substances psychotropes (LStup; RS 812.121). Le tribunal a notamment retenu que A._ s'était livré à un important trafic de cocaïne et d'héroïne de 1994 à novembre 2004. La peine infligée par le Tribunal d'arrondissement a été confirmée le 22 décembre 2006 par la Cour de cassation pénale du Tribunal cantonal du canton de Vaud et le 12 octobre 2007 par le Tribunal fédéral (causes jointes 6P.67/2007 et 6S.138/2007).
L'ODM a été informé par le Service de l'état civil et des naturalisations du canton de Fribourg de la condamnation de l'intéressé en première instance. Le 7 février 2007, il a indiqué à A._ qu'il allait examiner l'ouverture d'une procédure visant à l'annulation de la naturalisation facilitée. Il se référait à la condamnation pénale susmentionnée, relevant en outre que le jugement faisait état de "relations privilégiées" avec une certaine C._ entre 1994 et 1996. Invité à se déterminer, A._ a déclaré en substance que son mariage avec B._ ne pouvait en aucun cas être qualifié de mariage blanc et il a soutenu qu'on ne pouvait lui reprocher d'avoir induit les autorités en erreur en omettant de mentionner ses activités délictueuses sur le formulaire signé le 31 juillet 2003. Entendue le 12 juin 2007, B._ a confirmé qu'elle formait une communauté conjugale stable avec son époux.
Par décision du 14 septembre 2007, l'ODM a prononcé, avec l'assentiment des autorités compétentes du canton de Fribourg, l'annulation de la naturalisation facilitée accordée à A._. En substance, cet office a considéré que le prénommé s'était rendu coupable de déclarations mensongères en certifiant n'avoir commis aucun délit pour lequel il devait s'attendre à être poursuivi ou condamné. Il a par ailleurs estimé que "la compatibilité de la communauté conjugale de l'intéressé avec les exigences en matière de naturalisation facilitée [était] également sujette à caution" et que A._ avait "invoqué de manière fallacieuse les vertus de ladite communauté".
D. A._ a recouru contre cette décision après du Tribunal administratif fédéral. Il a souligné que son mariage était toujours intact et qu'aucune relation extraconjugale ne pouvait être prouvée. Il estimait par ailleurs que l'on ne pouvait pas lui reprocher d'avoir omis de mentionner ses activités délictueuses à l'autorité compétente pour la procédure de naturalisation facilitée, en vertu du droit de ne pas contribuer à sa propre incrimination. Par arrêt du 31 mars 2010, le Tribunal administratif fédéral a rejeté ce recours. Il a considéré en substance que A._ avait obtenu la nationalité suisse sur la base d'une déclaration mensongère et qu'il ne pouvait pas se prévaloir du "droit à ne pas s'auto-incriminer" dans le cadre d'une procédure administrative. La naturalisation facilitée devait dès lors être annulée pour ce motif, de sorte que la question de la stabilité de la communauté conjugale pouvait être laissée indécise.
E. Agissant par la voie du recours en matière de droit public, A._ demande au Tribunal fédéral d'annuler cet arrêt. Il reproche au Tribunal administratif fédéral d'avoir établi des faits de façon inexacte et d'avoir violé l'art. 14 ch. 3 let. g du Pacte international du 16 décembre 1966 relatif aux droits civils et politiques (Pacte ONU II; RS 0.103.2) et l'art. 6 al. 1 CEDH, en méconnaissant la portée du droit de ne pas contribuer à sa propre incrimination. Il requiert en outre l'octroi de l'effet suspensif. L'ODM et le Tribunal administratif fédéral ont renoncé à se déterminer.
F. Par ordonnance du 31 mai 2010, le Président de la Ire Cour de droit public a admis la requête d'effet suspensif.

Considérant en droit:
1. L'arrêt attaqué émane du Tribunal administratif fédéral et concerne l'annulation de la naturalisation facilitée accordée au recourant, si bien qu'il peut faire l'objet d'un recours en matière de droit public (art. 82 let. a et 86 al. 1 let. a LTF). Le motif d'exclusion de l'<ref-law> n'entre pas en ligne de compte, dès lors qu'il s'agit en l'espèce de naturalisation facilitée et non pas de naturalisation ordinaire. Pour le surplus, le recourant a la qualité pour recourir au sens de l'<ref-law> et les conditions formelles de recevabilité sont remplies, de sorte qu'il y a lieu d'entrer en matière. Bien que le mémoire de recours soit rédigé en allemand, le présent arrêt devra être rendu en français, langue de la décision attaquée (<ref-law>).
2. Le recourant reproche en premier lieu au Tribunal administratif fédéral d'avoir établi les faits de manière inexacte en retenant l'existence d'une liaison extraconjugale entre 1994 et 1996.
2.1 En principe, le Tribunal fédéral statue sur la base des faits établis par l'autorité précédente (<ref-law>), sous réserve des cas prévus à l'<ref-law>. Toutefois, selon l'<ref-law>, le recourant peut critiquer les constatations de faits à la double condition que ceux-ci aient été établis de façon manifestement inexacte ou en violation du droit au sens de l'<ref-law> et que la correction du vice soit susceptible d'influer sur le sort de la cause, ce qu'il doit rendre vraisemblable par une argumentation répondant aux exigences de l'<ref-law> (<ref-ruling> consid. 3 p. 104 s.; <ref-ruling> consid. 1.4.3 p. 254 s. et les références citées).
2.2 En l'occurrence, les faits contestés ont trait à une éventuelle relation extraconjugale, mentionnée dans le jugement pénal du 2 août 2006. Une correction de l'état de fait sur ce point n'est pas susceptible d'avoir une influence déterminante sur l'issue de la procédure, puisque le Tribunal administratif fédéral a laissé indécise la question de savoir si la communauté conjugale du recourant était effective et stable. En effet, l'arrêt attaqué ne fonde pas l'annulation de la naturalisation facilitée sur un comportement trompeur à cet égard, mais sur un mensonge en ce qui concerne le respect de l'ordre juridique suisse. Dès lors que la correction du vice allégué est sans incidence sur l'issue de la cause, ce premier grief doit être rejeté.
3. Pour le surplus, le recourant se plaint en substance d'une application trop stricte des art. 26 et 41 de la loi fédérale du 29 septembre 1952 sur l'acquisition et la perte de la nationalité suisse (LN; RS 141.0). Se prévalant du droit de ne pas contribuer à sa propre incrimination, il soutient que l'autorité précédente ne pouvait pas lui reprocher d'avoir dissimulé ses activités délictueuses.
3.1 L'art. 27 LN permet à un étranger d'obtenir la naturalisation facilitée en raison de son mariage avec un ressortissant suisse, s'il a résidé en Suisse durant cinq ans en tout, ou s'il y réside depuis une année et vit depuis trois ans en communauté conjugale avec un ressortissant suisse. Selon l'art. 26 al. 1 LN, l'octroi de la naturalisation facilitée requiert en outre que le recourant se soit intégré en Suisse, se conforme à la législation suisse et ne compromette pas la sécurité intérieure ou extérieure de la Suisse. Conformément à l'art. 41 al. 1 LN et à l'art. 14 al. 1 de l'ordonnance du 17 novembre 1999 sur l'organisation du Département fédéral de justice et police (RS 172.213.1), l'ODM peut, avec l'assentiment de l'autorité du canton d'origine, annuler dans les cinq ans une naturalisation facilitée obtenue par des déclarations mensongères ou par la dissimulation de preuves. Pour qu'une naturalisation facilitée soit annulée, il ne suffit pas qu'elle ait été obtenue alors que l'une ou l'autre de ses conditions n'était pas remplie; il faut qu'elle ait été acquise grâce à un comportement déloyal et trompeur. S'il n'est pas besoin que ce comportement soit constitutif d'une escroquerie au sens du droit pénal, il est nécessaire que l'intéressé ait donné sciemment de fausses informations à l'autorité ou l'ait délibérément laissée dans l'erreur sur des faits qu'il savait essentiels (<ref-ruling> consid. 2 p. 165; <ref-ruling> consid. 3.1 p. 115 et les références).
3.2 En l'espèce, le recourant admet avoir signé le 31 juillet 2003 une déclaration certifiant qu'il n'avait pas commis de délits pour lesquels il devait s'attendre à être poursuivi ou condamné alors qu'il était impliqué dans un important trafic de drogue depuis 1994. Il reconnaît donc implicitement avoir obtenu la naturalisation facilitée sur la base d'une déclaration mensongère ou une dissimulation de faits essentiels, de sorte que les conditions du retrait de la naturalisation facilitée sont en principe réunies.
3.3 Le recourant prétend toutefois qu'on ne peut pas lui reprocher d'avoir dissimulé ces faits, car il bénéficierait du droit à ne pas contribuer à sa propre incrimination, garanti par les art. 6 par. 1 CEDH et 14 ch. 3 let. g Pacte ONU II. Le Tribunal administratif fédéral considère quant à lui que ce droit ne saurait être invoqué dans une procédure administrative.
3.3.1 La procédure d'octroi de la naturalisation facilitée est régie par la loi fédérale du 20 décembre 1968 sur la procédure administrative (PA; RS 172.021). En vertu de l'<ref-law>, l'autorité constate les faits d'office; selon l'<ref-law>, les parties sont toutefois tenues de collaborer à la constatation des faits dans une procédure qu'elles introduisent elles-mêmes. Un devoir de collaborer avec l'autorité compétente incombe ainsi aux candidats à la naturalisation facilitée lorsqu'il s'agit d'établir que les conditions d'octroi de la nationalité suisse sont réunies (<ref-ruling> consid. 3 p. 165 s.; <ref-ruling> consid. 3.2 p. 115 s.; <ref-ruling> consid. 3.2 p. 485 s. et les références citées). Si les requérants refusent de prêter le concours nécessaire que l'on peut attendre d'eux, l'autorité peut déclarer leurs conclusions irrecevables (<ref-law>). Selon la jurisprudence, le devoir de collaborer en matière de naturalisation facilitée s'étend à l'obligation de fournir des renseignements qui peuvent avoir des effets négatifs pour les requérants (ATF <ref-ruling> consid. 3.2 p. 115 s.; arrêt 1C_578/2008 du 11 novembre 2009 consid. 3.1).
La Cour européenne des droits de l'homme a déduit de l'art. 6 par. 1 CEDH le droit de ne pas contribuer à sa propre incrimination; ce droit présuppose que les autorités cherchent à fonder leur argumentation sans recourir à des éléments de preuve obtenus par la contrainte ou les pressions, au mépris de la volonté de l'accusé (cf. arrêt J.B. contre Suisse du 3 mai 2001, Recueil CourEDH 2001-III p. 455 § 64 et les références). De même, l'art. 14 ch. 3 let. g Pacte ONU II garantit que toute personne a le droit de ne pas être forcée de témoigner contre elle-même ou de s'avouer coupable. Cela étant, ces garanties ne valent que dans le champ d'application de ces conventions, qui ne comprend en principe pas les procédures purement administratives (cf. art. 6 par. 1 CEDH et 14 ch. 3 Pacte ONU II).
Quant à la Constitution fédérale, elle ne garantit pas explicitement un tel droit. Selon la jurisprudence, il fait toutefois partie des principes généraux de la procédure pénale, précédemment déduits de l'art. 4 aCst. (<ref-ruling> consid. 3.1 p. 40 s.; <ref-ruling> consid. 2.1 p. 128 et les références citées). Il s'agit avant tout d'une garantie visant à protéger les droits de la défense en procédure pénale (Hansjörg Seiler, Das (Miss-)Verhältnis zwischen strafprozessualem Schweigerecht und verwaltungsrechtlicher Mitwirkungs- und Auskunftspflicht, in recht 2005, p. 11 ss; Flachsmann/Wehrenberg, Aussageverweigerungsrecht und Informationspflicht, in RSJ 2001 p. 314 ss). Se fondant sur ce principe, certains auteurs estiment cependant que les informations recueillies en vertu du devoir de collaborer avec l'autorité administrative ne peuvent pas être exploitées au détriment des intéressés dans le cadre d'une procédure pénale (cf. Isabelle Häner, Mindestgarantien für Strafverfahren und ihre Bedeutung für verwaltungsrechtliche Sanktionen, in Häner/Waldmann (éd.), Verwaltungsstrafrecht und sanktionierendes Verwaltungsrecht, 2010, p. 37; Niklaus Ruckstuhl, Strafprozessuales Schweigerecht und verwaltungsrechtliche Mitwirkungs- respektive Auskunftspflicht - ein Gegensatz?, in Jahrbuch zum Strassenverkehrsrecht, 2006, p. 230 s.).
3.3.2 En l'espèce, le recourant était pleinement tenu de collaborer avec l'autorité compétente dans le cadre de la procédure de naturalisation facilitée. On peut se demander s'il est habilité à invoquer dans ce cadre le droit de ne pas s'incriminer soi-même, dans la mesure où il ne s'agit pas d'une procédure pénale. Cette question peut cependant demeurer indécise, dès lors que le recourant n'a aucunement été contraint de s'incriminer ni fait l'objet de pressions pour s'avouer coupable. En effet, il était libre ne pas répondre aux questions concernant le respect de l'ordre juridique suisse et de renoncer à signer le formulaire y relatif. Certes, il se serait ainsi exposé au refus de la naturalisation facilitée, mais une telle décision, allant à l'encontre de ses intérêts sur le plan administratif, ne viole pas le droit de ne pas s'incriminer soi-même. Le recourant n'était du reste pas obligé de déposer une demande de naturalisation facilitée et il avait toujours la possibilité de retirer cette requête s'il craignait de s'exposer à une poursuite pénale. Au demeurant, dans la mesure où il violait délibérément l'ordre juridique suisse en se livrant à un important trafic de stupéfiants, il était malvenu de demander simultanément l'octroi de la naturalisation facilitée. Ce comportement étant contraire aux règles de la bonne foi applicables en procédure administrative, il ne saurait être protégé. De même, le droit de ne pas s'incriminer soi-même ne saurait servir à livrer sciemment de fausses informations à l'autorité administrative dans le but d'obtenir une décision contraire au droit. En définitive, c'est à juste titre que le Tribunal administratif fédéral a fait grief au recourant d'avoir induit les autorités en erreur et l'annulation de la naturalisation facilitée pour ce motif ne porte pas atteinte aux garanties susmentionnées.
4. Il s'ensuit que le recours doit être rejeté. Le recourant, qui succombe, doit supporter les frais de la présente procédure (<ref-law>).

Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté.
2. Les frais judiciaires, arrêtés à 2'000 fr., sont mis à la charge du recourant.
3. Le présent arrêt est communiqué au mandataire du recourant, à l'Office fédéral des migrations et au Tribunal administratif fédéral, Cour III.
Lausanne, le 23 juillet 2010
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président: Le Greffier:
Féraud Rittener