Cómo convertir la estructura con una matriz de cadena a NSData y viceversa Swift

Tengo esta estructura:

struct MessageRandomWords {
        let message = MessageType.kMessageTypeRandomWords
        let randomWords : Array<Array<String>>
    }

Estoy tratando de convertir esta estructura a NSDate haciendo esto:

    var message = MessageRandomWords(randomWords: self.words)
    let data = NSData(bytes: &message, length: sizeof(MessageRandomWords))

Pero cuando intento convertir esto de nuevo a la estructura original:

var messageRandomWords : MessageRandomWords?
                data.getBytes(&messageRandomWords, length: sizeof(MessageRandomWords))
                if let messageRandomWords = messageRandomWords {

}

Recibí unaBAD_ACCESS erro en la declaración if let. ¿Dónde está el problema?

Respuestas a la pregunta(1)

Su respuesta a la pregunta